小编Max*_*ant的帖子

Rails 5 的条件验证

我有一个嵌套的表单,我希望验证某些字段,才能选择特定字段。

我的第一个字段是一个单选按钮:

<%= f.radio_button :type_doc, '5' %>
<%= f.radio_button :type_doc, '6' %>
<%= f.radio_button :type_doc, '7' %>
Run Code Online (Sandbox Code Playgroud)

然后(例如)如果我选择类型为“6”的单选按钮,我想要这个

<%= f.text_field :number_doc, :placeholder => 'Number' %>
Run Code Online (Sandbox Code Playgroud)

被填满。

我已经尝试过官方文档中的解释:Rails 活动记录验证

所以,在我的 doc.rb 模型中,我有这个:

validates :number_doc, presence: true, if: :type_6?

def type_6?
  :type_doc == '6'
end 
Run Code Online (Sandbox Code Playgroud)

但它不起作用,我仍然可以选择 :type_doc == 6 并让我的字段 :number_doc 为空。

有任何想法吗 ?谢谢

ruby validation ruby-on-rails

0
推荐指数
1
解决办法
2399
查看次数

标签 统计

ruby ×1

ruby-on-rails ×1

validation ×1