我正在使用Lightbox Gone Wild来显示内部表单的模态对话框。我正在使用香草新视图。这就像一个冠军直到用户不输入有效的表单数据。无效的数据会导致控制器将用户直接指向新视图并显示错误消息。显然,我宁愿将错误返回给模式,但我明白用户被定向到错误的常规新视图的原因。Rails Modal表单验证
一个明显但不切实际的选择是编写自定义客户端验证。另一种方法是根据模型验证生成客户端验证逻辑。为此,我发现了两个利用validation_reflection的婴儿插件。虽然validatious-on-rails几乎是周老client_side_validation似乎被放弃。最后,使用form_remote_tag也看起来很有前景,因为它执行AJAX回发,并且似乎不会执行错误刷新。
总之,我正在寻找最常用的方式来验证用户输入到在模式对话框中呈现给用户的表单,并在错误时将它们返回到具有错误的对话框。
代码来打开模态
<% link_to 'New Project...', new_project_path, :class => 'lbOn' %>
新视角
<% form_for(@project) do |f| %>
<%= f.error_messages %>
<p>
<%= f.label :name %><br />
<%= f.text_field :name %>
</p>
<p>
<%= f.label :description %><br />
<%= f.text_field :description %>
</p>
<p>
<%= f.submit 'Create' %><br />
<a href="#" class="lbAction" rel="deactivate">Cancel</a>
</p>
<% end %>