如何为新模型创建带有 id 的永久链接?
例如
animal = Animal.create(name: 'cool dog') #creates animal with id of 1 and name of dog
animal.permalink => "1-cool-dog"
如何添加正确的回调以便插入 id?before_save
或after_save
不起作用
after_save :update_permalink #or before_save
def update_permalink
self.permalink = "#{id} #{name}".parameterize
end
最终发生的是我得到“cool-dog”而不是“1-cool-dog”
我明白为什么。它设置了一个属性而不将其保存在 after_save 上。但是在 before_save 上也不起作用,因为 id 尚未在新记录上创建。