使用
Ruby on Rails我想在创建ActiveRecord对象之前有一个确认页面.在提交之前,用户将看到他们正在创建的项目的预览,并且将对象保存在数据库中
一种常见的模式;
>用户访问/输入/新
>用户输入详细信息并单击提交
>用户被重定向到/ entry / confirm,显示条目并单击提交或编辑以更正错误
>对象已保存
你会如何实现它?
解决方法
解决此问题的另一个选项是通过虚拟确认属性添加到模型中.这样,就不需要为此创建单独的操作:
class MyRecord < ActiveRecord::Base attr_accessor :confirmation validates_acceptance_of :confirmation,:on => :create end
现在,您的新对象将无法正确保存,因为确认字段上的验证将失败.您可以检测到这种情况并提供如下内容:
<% form_for(@my_record) do |form| %> ... <%= form.check_Box :confirmation %> Really create this record. <%= submit_tag('Confirm') %> <% end %>