Я хотел бы дать John Doe постоянная ссылка джона-МЭ-2, если уже есть джон-МЭ-1. Номер должен быть следующий свободный один, который будет добавлен («джон-doe- п»)Rails: Append номера для PermaLink, если постоянная ссылка уже принята
В настоящее время мои Permalinks генерируются обычным способом:
before_validation :generate_slug
private
def generate_slug
self.permalink = self.name.parameterize
end
Как реализовать validates_uniqueness_of-подобный метод, который добавляет этот номер к self.permalink, а затем сохраняет пользователя в обычном режиме?
Спасибо dvyjones, в этом ориентированном на пользователя сумасшедшем случае, вероятно, было бы несчастливо иметь постоянную ссылку профиля, связанную с датой создания: ** user/4208-john-doe **, очевидно, был бы более новым для сайта, чем ** пользователь/1-джон-лань **. Итак, я бы выбрал второе решение, как бы вы это сделали в коде? – David
Ну, john-doe-1 также будет новее, чем john-doe-2. Но чтобы ответить на ваш вопрос, я считаю, что это сработает: https://gist.github.com/456d87a12bdd6aa30779. Однако я его не тестировал. – henrikhodne
Спасибо, посмотрим! – David