【发布时间】:2011-11-23 16:37:14
【问题描述】:
我有一个User 模型女巫,我已经覆盖了to_param 方法。
我是这样设计的:
class User < ActiveRecord::Base
def to_param
if self.id < 100
if self.id < 10
s = "00#{self.id}"
else
s = "0#{self.id}"
end
else
s = "#{self.id}"
end
return "usr-#{s}"
end
end
在我的控制器上:
user = User.find(params[:id])
@title = user.name
问题是...我无法获得任何用户...
如果我将to_param 方法更改为:return "#{s}-usr" 它会简单地忽略-usr 并在不使用-usr 的情况下搜索id
我已经尝试了 after_save 过滤器,但我无法更改那里的属性。
如何根据用户的 id 为用户创建唯一的 id ?
【问题讨论】:
标签: activerecord model ruby-on-rails-3.1 rails-3.1