验证rails 4中attr_accessor的标记

时间:2014-04-13 15:17:01

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

我的应用程序中有一个项目模型,我有:

attr_accessor :tags

tags是来自提交表单的字段,该字段进入控制器以进行进一步设置。我想确保在提交表单时,此数组/标签的大小不超过5.我该怎么做?我正在使用rails 4。

这就是表单的样子:

<%=f.autocomplete_field :tags, autocomplete_tags_project_path,'data-delimiter' => ',', :multiple => true%>

autocomplete_field来自我正在使用的宝石。

我无法使用这样的东西:

validates :tags, :length => {:maximum => 5}

感谢任何帮助。


更新:到达控制器的表单看起来像

"tags"=>["test, tets, tst, test, test, test, tets, te st, tes"],

1 个答案:

答案 0 :(得分:0)

请试一试

validate :tag_size

def tag_size
  errors.add(:tags, 'YOUR ERROR MESSAGE') if tags.size > 5
end