###前提・実現したいこと
画面の構成として、
index.html.erbにtableがあってUser一覧が表示されています。
追加ボタンを押すとModalが表示され、入力して、Createすると右上にFlash(PNotifyを利用)
が表示され、また、indexにredirectされます。
Createの流れ
index画面 ↓ 追加ボタン ↓ Modal ↓ create ↓ Flash表示 ↓ index画面 * この後、2人目のユーザーを連続することも可能。
同様に、各rowに設置された、editボタンを押すと、edit用のModalが立ち上がり、updateすると、右上にFlashが表示され、またindexにredirectされます。
Updateの流れ
index画面 ↓ 編集ボタン ↓ Modal ↓ update ↓ Flash表示 ↓ index画面 * この後、別ユーザーを連続して、編集できない。**(reloadするとできる。)**
上記のように、createとupdateの挙動が異なり、updateの方は、いちいちリロードして、jsを読み込ませないと、うまくupdateできません。
###発生している問題・エラーメッセージ
jsのconsoleをみてみると、createとupdateとで異なる部分がありました。
どちらも1度目のmodalで処理後。(つまり、2度目の前)
Createの場合
Updateの場合
推測として、updateのturbolinksの場合のturbolinksの挙動が上手くいっていないということは何となくわかるのですが、どこをどう直していいのか、分かりません。恐れ入りますが、教えてください!
###該当のソースコード
ruby
1 2Index 3 4 def index 5 6 @user_update_form = User::UserManagementForm.new 7 @user_management_form = User::UserManagementForm.new 8 @users = User.all 9 10 11 end 12 13 14Create 15 16 def create 17 # puts params 18 @user_management_form = User::UserManagementForm.new(user_management_params) 19 if @user_management_form.submit 20 redirect_to user_managements_path, flash: { success: t('.success') } 21 else 22 error_message = @user_management_form.errors.full_messages.join('\n') 23 redirect_to user_managements_path, flash: { error: error_message } 24 end 25 end 26 27Update 28 29 @user_update_form = User::UserManagementForm.new(user_management_params.merge("id" => params[:id])) 30 if @user_update_form.update 31 redirect_to user_managements_path, flash: { success: t('.success') } 32 else 33 error_message = @user_management_form.errors.full_messages.join('\n') 34 redirect_to user_managements_path, flash: { error: error_message } 35 end 36 end 37
###試したこと
redirect_to user_managements_path の後に、'data-turbolinks' => falseをつけてみたりしました。
###補足情報(言語/FW/ツール等のバージョンなど)
rails5.1.3
webpackerを利用しています。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。