如何保存用户名的小写版本?我正在尝试做“How do I handle uppercase and lowercase characters in a custom url?”中的说法。
我想在两个不同的列中保存小写和区分大小写的用户名版本。
谢谢。
答案 0 :(得分:2)
您可以在模型中添加类似的内容,其中lower_username
是表格中的其他用户名列。
#Simply populates the field on the database
before_save :downcase_username
或
#If you have validation of the username (ie must be a unique field),
#you may want to assign the lowercase username before the validation occurs.
before_validation :downcase_username
创建私有方法以填充小写用户名列
private
def downcase_username
self.lower_username = self.username.downcase
end
答案 1 :(得分:1)
# in user model
before_validation :generate_lowercase_username
private
def generate_lowercase_username
self.lowercase_username = username.downcase
end
答案 2 :(得分:0)
@user.username = "AbCd"
@user.lowercase_username = @user.username.downcase
@user.save