Как создать постоянную ссылку с идентификатором для новой модели?Как создать постоянную ссылку с идентификатором?
например
animal = Animal.create(name: 'cool dog') #creates animal with id of 1 and name of dog
animal.permalink => "1-cool-dog"
Как добавить правильный обратный вызов, так что идентификатор вставляется? before_save
или after_save
не работает
after_save :update_permalink #or before_save
def update_permalink
self.permalink = "#{id} #{name}".parameterize
end
Что в конце концов происходит, я получаю «прохладное собаку» вместо «1-круто-собака»
И я понимаю, почему. Он устанавливает атрибут без сохранения на after_save. Но не работает над before_save либо потому, что id не был создан в новой записи.
Что-то вы должны думать о том, перекрывая метод to_param вашей животной модели вместо добавления Постоянная ссылка на ваш db. Rails автоматически активирует постоянную ссылку, начинающуюся с id. –