自将我的网站升级到Rails 4后,客户端验证gem已停止为我工作。我已经看过各种替代方案,例如jquery-validation-rails和judge,它们涉及编写相当多的javascript,特别是对于一个如此大的网站。在jquery-validation-rails的情况下,重新执行客户端的所有验证规则。考虑到Rails是一个如此流行的框架,令我惊讶的是没有“简单”的选择。有没有其他人知道的宝石,它做验证以及客户端验证宝石?
或者是使用与某些ajax混合的ModelName.validators方法的最佳替代方法,并通过jquery-validation-rails gem进行验证?
答案 0 :(得分:13)
来自Google。
http://rubygems.org/gems/rails4_client_side_validations
https://github.com/amatsuda/html5_validators
此外,这家伙似乎已经使用4-0-beta分支获得了相同的宝石。
Client Side Validations and Rails4
如果4-0-beta分支适合您,请考虑帮助维护宝石以使其保持活力。
在Gemfile中使用某个git repo版本:
gem 'client-side-validations', :git => 'https://github.com/bcardarella/client_side_validations/tree/4-0-beta'
答案 1 :(得分:10)
虽然客户端验证适用于简单的情况,但它们需要大量的解决方法来处理更复杂的场景(例如 - 条件验证)。 我建议改为使用Judge,这样可以提供更多控制权。
答案 2 :(得分:2)
我能够使用目前非常活跃的原始client_side_vlaidations的分支。我使用的是最新版本的simple_form,rails 4.1.8和这个client_side_validations。使用基本配置进行简单设置。
答案 3 :(得分:0)
我知道这个问题已经过时了,但旧的要求如何:"要求"?
例如在视图中:
<%= f.text_area :body, placeholder: "Write your review here...", class: "form-control", rows: "5", required: "required" %>
答案 4 :(得分:-1)
如果您使用的是Bootstrap Form for Rails,您可以尝试使用bootstrap_validator_rails。