使用Parsley与Rails

时间:2014-03-25 20:00:35

标签: ruby-on-rails-3 parsley.js

我正在尝试将parsley.js添加到rails项目中以进行客户端表单验证,但似乎无法使其正常工作。

我正在使用gem for parsley作为rails资产管道 - https://github.com/mekishizufu/parsley-rails

gem "parsley-rails"

我继续在我的application.js文件

中需要它
//= require jquery
//= require parsley
//= require jquery_ujs
//= require twitter/bootstrap
//= require_tree .

然后我将以下内容添加到我希望在

上验证的表单中
 <%= form_for :user, :html => {:"data-validate" => 'parsley'} do |user| %>

在html中为表单生成数据属性

data-validate="parsley"

然后检查我的地址是否存在:

<%= label_tag :current_address %>

<%= text_field_tag :address, nil, :data => {:"required" => 'true'} %>

其中呈现带有文本字段属性的文本字段

data-required="true"

然而,当我点击提交时,没有发生任何验证并发出了一个帖子请求。为了让欧芹在rails 3表单上工作,我还需要做些什么?非常感谢!

3 个答案:

答案 0 :(得分:3)

gem使用Parsley-js版本1.2.3,因为2.0.0仍然是候选版本。以下是该版本的文档:http://parsleyjs.github.io/Parsley-1.x/documentation.html

属性有点不同 - form_for标记应如下所示:

<%= form_for :user, :html => {'parsley-validate' => ''} do |user| %>

和文本字段:

<%= text_field_tag :address, 'parsley-required' => '' %>

希望这有帮助。

<强> 更新 'parsley-rails'宝石现在正在使用v2.0。

答案 1 :(得分:2)

目前的版本现在是2.0.5,文档可以在http://parsleyjs.org

找到

使用rails gem,您现在需要将data-parsley-validate添加到表单和指令required到输入。

在轨道表格中,我很幸运:

<%= form_for @post, :html => {"data-parsley-validate" => true} do |f| %> <%= f.text_field :title, :placeholder => "Title", :required => true %>

希望这有助于某人直到parsley-rails在自述文件中获得更好的链接或基本用法文档。可能是一个不错的公关...

答案 2 :(得分:0)

通过使用

初始化parsley,我得到了欧芹在我们的Rails应用程序中工作
  $('#form-id').parsley({ 'data-parsley-focus': 'first' });

&#39;数据 - 欧洲焦点&#39;是一个选项,如果验证失败,parsley将发送光标。

我在gemfile中包含了gem,但我的application.js在ujs适配器之后加载了parsley

//= require jquery
//= require jquery_ujs
//= require parsley