我正在使用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 %>