私はRails 4.2.3を使用しています。私はモーダルダイアログでフォームを送信したいので、私はそうRailsでリモートフォームを送信した後、そのユーザーを別のページにリダイレクトするにはどうすればよいですか?
<%= form_for @my_object, :remote => true do |f| %>
ように私のフォームを設定しているが、ユーザーが正常にフォームを送信した場合、私はモーダルダイアログを呼び出したページをリロードしたいと思います「Saved Successfully」の通知。これを実現させるために私が "format.js"に入れなければならないものはわかりません。これは、私がこれまでに...
今def create
@my_object = MyObject.new(my_object_params)
@current_user = User.find(session["user_id"])
@my_object.user = @current_user
respond_to do |format|
if @my_object.save
format.html { redirect_to controller: "users", action: "index", notice: 'Saved successfully.' }
format.js { render action: ‘../users/index’, notice: ‘Saved Successfully’, location: @my_object }
else
format.html { render action: "index" }
format.js { render json: @my_object.errors, status: :unprocessable_entity }
end
end
end
私のコントローラを持っている私は何をしようとすると、上記を実行するときにパーシャルを逃し不満500エラーで成功提出結果です。とにかく私が持っているものが間違っていることを確かめる。
なぜ 'remote:true'なしで単純なhtml版を使いたくないのですか?あなたはそれをリダイレクトしたい場合。 – 7urkm3n
@ 7urkm3nと同意します。リダイレクト/リロードを追加すると、リモートフォームを使用する目的が無効になります。 – mmichael
他のポスターへの私のコメントによれば、検証エラーがある場合、それらをモーダルウィンドウに表示します。さもなければ、私はページをリロードしてウィンドウを再生成しなければならず、それは乱雑に見えます。 – Dave