将text_field限制为仅三个值

时间:2013-10-04 19:16:53

标签: ruby-on-rails

我有一个简单的应用程序,它使用text_field标记来输入:

 <div><%= f.label :user %><br />
  <%= f.text_field :user %></div>

我知道我可以使用选择字段限制输入:

<div><%= f.label :user %><br />
<%= f.select :user, [ ['user1'], ['user2'], ['user3'] ] %></div>

我想知道如何将上述选择字段设置为相同的限制,应用于上面的简单text_field。 (即user1,user2,user3仍然是唯一允许的输入,但页面上的用户不会通过select字段看到user1,user2,user3)。

编辑* 我只是在寻找一个简单的验证方案

1 个答案:

答案 0 :(得分:5)

您可以使用inclusion validation

class YourModel < ActiveRecord::Base
  validates :user, inclusion: { in: ['user1', 'user2', 'user3'],
    message: "%{value} is not a valid user" }
end