jsでウィザードを作りたいです。
steps :first_step,
:second_step
私の「controller_step」で
def show
case step
when :first_step
@r = R.new
when :second_step
end
render_wizard
end
def update
case step
when :first_step
@r = R.new(r_params)
when :second_step
end
render_wizard @r
end
最初のステップの更新後に問題が発生しました。次のエラー メッセージが表示されます。
「{:locale=>[:en]、:formats=>[:html]、:variants=>[]、:handlers=>[:erb、:builder、:raw のテンプレート controller_step/second_step、application/second_step がありません」 , :ruby, :coffee, :jbuilder]}. ".
jsテンプレートを強制的にロードするにはどうすればよいですか? 「second_step.js.erb」をロードします。
更新方法を変更しようとしました:
respond_to do |format|
format.js { render :js => ( render_wizard @r ) }
end
もちろん、次のエラーが表示されます。
"AbstractController::DoubleRenderError in ...Controller#update Render および/または redirect が、このアクションで複数回呼び出されました。render または redirect のみを呼び出すことができ、アクションごとに最大 1 回であることに注意してください。また、redirect も render もどちらも呼び出さないことに注意してください。アクションの実行を終了するので、リダイレクト後にアクションを終了したい場合は、「redirect_to(...) と return」のようなことをする必要があります。
また、コードを変更しようとしました(更新中):
respond_to do |format|
format.js { render :js => ( render_wizard @room_types and return ) }
end
同じエラーが発生します ( ... application/second_step with {:locale=>[:en], :formats=>[:html] .... )
PS
最初のステップを考慮して:
<%= form_for(@r, url: wizard_path, method: :put, remote: true) do |f| %>
....
<%= f.submit "Submit", class: "btn btn-default" %>
<% end %>
どうすれば修正できますか? 前もって感謝します