coc*_*coa 3 ruby-on-rails ruby-on-rails-3
当我在/编辑动作时,我看到编辑按钮,但问题是如果表单验证中出现错误,则呈现操作编辑,我看到创建按钮.我该怎么办呢?
<%= form_for(@page) do |f| %>
<% if controller.action_name =="edit" %>
<%= f.submit "Update" %>
<% else %>
<%= f.submit "Create" %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
<% if ["edit", "update"].include? params[:action] %>
<%= f.submit "Update" %>
<% else %>
<%= f.submit "Create" %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
更好的解决方案是将表单提取为部分,并使用按钮名称发送局部变量
你的edit观点:
<%= render :partial => "form", :locals => { :button_label => "Edit" } %>
Run Code Online (Sandbox Code Playgroud)
你的create观点:
<%= render :partial => "form", :locals => { :button_label => "create" } %>
Run Code Online (Sandbox Code Playgroud)
你的_form部分:
<%= form_for @object ... do |f| %>
...
<%= f.submit button_label %>
<% end %>
Run Code Online (Sandbox Code Playgroud)
UPD
我认为@idlefingers解决方案最适合您的问题
| 归档时间: |
|
| 查看次数: |
3233 次 |
| 最近记录: |