我已将此添加到我的模型中:
key :name, :random_number
我正在使用此回调:
before_create :create_random_number
但是random_number没有使用这样的方法附加到_id:
def create_random_number
rand(99999999999999999999)
end
这是我得到的结果:
>> Product.create(name: "foo")
=> <Product _id: foo,
答案 0 :(得分:1)
事实证明你需要使用after_initialize。这对我有用:
key :slug
after_initialize :create_slug
def create_slug
name = self.name.gsub(' ', '-')
self.slug = "#{name}-#{rand(36**20).to_s(36)}"
end