具有不同重定向的多个保存按钮
Multiple Save buttons with different redirects
如何在活动的管理表单上提供两个提交按钮,以便在更新后重定向到不同的位置?
根据 params
.
中的 commit
值简单地 select 您的 redirect
在动作块中创建动作,设置将传递到参数中的名称和值。
这将在控制器块中可用,您也可以在管理文件中创建
f.actions do
f.action :submit, :as => :button
f.action :submit, :as => :button, label: 'Save and Next', button_html: {name: 'foo', value: 'bah'}
f.action :cancel, :as => :link, label: 'Cancel', class: 'cancel', wrapper_html: {class: :cancel}
end
controller do
def update
@start = Start.find params[:id]
update! do |format|
format.html {
if params['foo']
if @start.next
redirect_to edit_admin_start_path(@start.next)
else
redirect_to admin_race_path(@start.race_id)
end
else
redirect_to admin_race_path(@start.race_id)
end
}
end
end
end
如何在活动的管理表单上提供两个提交按钮,以便在更新后重定向到不同的位置?
根据 params
.
commit
值简单地 select 您的 redirect
在动作块中创建动作,设置将传递到参数中的名称和值。
这将在控制器块中可用,您也可以在管理文件中创建
f.actions do
f.action :submit, :as => :button
f.action :submit, :as => :button, label: 'Save and Next', button_html: {name: 'foo', value: 'bah'}
f.action :cancel, :as => :link, label: 'Cancel', class: 'cancel', wrapper_html: {class: :cancel}
end
controller do
def update
@start = Start.find params[:id]
update! do |format|
format.html {
if params['foo']
if @start.next
redirect_to edit_admin_start_path(@start.next)
else
redirect_to admin_race_path(@start.race_id)
end
else
redirect_to admin_race_path(@start.race_id)
end
}
end
end
end