9

我有这个代码

我有这些选项,如果用户选择“不列颠哥伦比亚省”以外的任何内容,给他错误消息,该省必须“不列颠哥伦比亚省”

我相信它会通过使用模型验证来解决

<%= f.label :province ,"Province (required)"%><br>
    <%= f.select(:province, [["Select One", ""],'Alberta','British Columbia','Manitoba','New Brunswick','Newfoundland and Labrador','Nova Scotia','Northwest Territories','Nunavut','Ontario','Prince Edward Island','Quebec','Saskatchewan','Yukon'], {}) %>

用户.rb

  validates :province, presence: "British Columbia"
4

1 回答 1

12

你不应该使用存在,这是错误的验证。您应该使用包含

validates :province, inclusion: { in: %w[British Columbia] }

你意识到这是一个荒谬的问题,对吧?如果验证只接受一个,那么在视图中提供几种替代方案有什么意义?

于 2016-10-14T23:26:19.983 回答