8

我正在尝试在我的用户模型中strip使用变量的空格。Username

我在用着

before_save do
  self.username.strip!
end

但它似乎不起作用,我错过了什么吗?

4

2 回答 2

20

你宁愿更新 setter 而不是用回调污染你的模型:

def username=(value)
  self[:username] = value.to_s.strip
end

顺便说一句,我更喜欢squish

于 2014-01-28T09:11:06.640 回答
0

如果您只想删除前导和尾随空格,您可以使用 .strip!

但正如你所说:

我试图在我的用户模型中去除变量用户名的空格。

我认为实际上你想删除 以下应该做的所有空格:

.gsub(/\s+/, "")

编辑:

哦对了,你也可以使用 Rail 的内置方法squish()

感谢 apneadiving的提醒

于 2014-01-28T09:19:23.550 回答