Using turbo-ios, I was was able to very quickly convert my web-app to an iOS app in a Rails 7.0.0 app with ruby 3.2.2. I want to use some native menus. So using strada, I converted my top menus to native menus. This mostly works except that successful form submission somehow breaks the nexus between the native components and the bridge controllers so clicking on the native menu icon no longer opens the menu. This despite all the stimulus controllers reconnecting after the successful submission.
I am using Turbo-drive by inserting <%= turbo_include_tags %>
in the <head>
tag and inserting into the application.js
window.Turbo = Turbo
Turbo.session.drive = true
A typical controller action is
def create
@lesson = Lesson.new
if @lesson = @student.lessons.build(lesson_params)
flash[:success] = 'Lesson has been posted'
redirect_to root_path
else
@title = 'Post Lesson'
@user = current_user
render :new, status: :unprocessable_entity
end
end
I am hoping that this is just a matter of missing a configuration step, because if I configure my development server to point to the ip address of my machine everything works fine, i.e. the form submission does not break the native menu.
This server configuration is done by setting
config.asset_host = 'http//:123.566.0.123:3000'
and running the server with rails s -b 0.0.0.0 -p 3000
, but still keeping the Swift code url pointing to http://localhost:3000
.