friendly_id в профиле с использованием параметра из пользовательской модели?

Я слежу за актерами http://railscasts.com/episodes/314-pretty-urls-with-friendlyid?autoplay=true для friendly_id

Наличие модели пользователя с полем «логин» и модели профиля с «user_id», принадлежащей пользователю

Как я могу настроить friendly_id так, чтобы он использовал поле входа в систему из модели пользователя для своего слага и получал /profiles/1 в /profiles/username (= вход из модели пользователя)


person Rubytastic    schedule 24.01.2012    source источник


Ответы (1)


Friendly_id будет использовать имя столбца или метода, которое вы указали в конфигурации friendly_id. Итак, вы можете сделать это:

class Profile
  belongs_to :user

  friendly_id :profile_permalink, use: :slugged

  protected

  def profile_permalink
    user.login
  end

end
person fkreusch    schedule 24.01.2012
comment
Установил все следующие инструкции и в консоли User.find_each(:save) не создает слагов. Предложения def profile_permalink тоже не работают, я посмотрю на них позже, спасибо. - person Rubytastic; 25.01.2012
comment
В конце концов сработала какая-то странная проблема с устаревшим драгоценным камнем, не уверенным, что один обновленный драгоценный камень и перезапущенное приложение заставили его работать. - person Rubytastic; 06.02.2012
comment
@fkreush вышеуказанный метод дает мне ошибку Не удалось найти профиль с id=Username - person Adt; 16.01.2015