我使用devise创建了一个用户模型。我添加了一个自定义参数username,这是一个字符串。我想检查用户名是否必须以大写字母开头,如果没有,则发出提醒。我应该在users_controller.rb中添加什么?
答案 0 :(得分:0)
<强>没有强>
如果您已设置了param sanitation,则无需进一步更改控制器。
您可以向用户模型添加验证:
class User < ActiveRecord::Base
# ...
# customize this to your requirements.
validates :username, presence: true,
length: 2,
uniqueness: true
validate :username_starts_with_uppercase
private
def username_starts_with_uppercase
unless username[0] == username[0].capitalize
errors.add(:username, 'must begin with an uppercase letter.')
end
end
end