执行客户端验证的rails方式(带有simple_form的Rails 4)

时间:2014-01-13 22:06:26

标签: ruby-on-rails ruby ruby-on-rails-4

我是Rails的新手并使用Rails 4.我已经开始创建/编辑某些模型的一些表单,并添加了一些在服务器端工作正常的验证。

我认为Rails会内置一些东西来处理客户端验证 - 结果却没有。

我在google上搜索过,发现'client_side_validation'已经不再维护了,我认为无论如何都不会在Rails 4中运行。

似乎没有明显的Rails客户端验证库。那么处理这个问题的'Rails方式'是什么?滚你自己?使用jQuery复制逻辑客户端?使用html5验证,当它不是他们的时候回退到服务器端?或者是否有一个我可以安装和使用的库(最好是使用simple_form的库)?

4 个答案:

答案 0 :(得分:2)

client_side_validations,但不再维护。可能最好的方法是使用一些jQuery插件,如jquery-validation

答案 1 :(得分:2)

Rails 4 +简单形式: 要成功安装simple_form的“客户端验证”,您应该直接从Github检查最新版本的最新版本。

发布的宝石无法使用Rails> = 4.0

gem 'client_side_validations', github: 'DavyJonesLocker/client_side_validations'
gem 'client_side_validations-simple_form', github: 'DavyJonesLocker/client_side_validations-simple_form'

确保您的gem文件不使用这些版本

client-side Validation 3.2.5
client_side_validations-simple_form 2.1.0

这些版本不支持rails 4.2.0

有关详细信息,请查看此链接, https://github.com/DavyJonesLocker/client_side_validations-simple_form/issues/41

答案 2 :(得分:1)

实现这一目标的一种方法是在Rails 4中使用客户端验证gem:http://rubygems.org/gems/rails4_client_side_validations

这家伙正在使用它:Client Side Validations and Rails4

Railscasts在这里提供了一个很好的教程(Rails 3): http://railscasts.com/episodes/263-client-side-validations

答案 3 :(得分:0)

我能够使用目前非常活跃的原始client_side_vlaidations的分支。我使用的是最新版本的simple_form,rails 4.1.8和这个client_side_validations。使用基本配置进行简单设置。