1

如何保存用户名的小写版本?我正在尝试执行“如何处理自定义 url 中的大写和小写字符? ”中所说的内容。

我想将用户名的小写版本和区分大小写的版本保存在两个不同的列中。

谢谢你。

4

3 回答 3

3

您可以在模型中添加类似这样的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
于 2013-10-11T17:42:22.000 回答
1
# in user model
before_validation :generate_lowercase_username

private
  def generate_lowercase_username
    self.lowercase_username = username.downcase
  end
于 2013-10-11T17:49:53.030 回答
0
@user.username = "AbCd"
@user.lowercase_username = @user.username.downcase
@user.save
于 2013-10-11T17:42:13.277 回答