Присоединение условных методов (или атрибутов?) К модели рельсов - PullRequest
0 голосов
/ 24 сентября 2010

Я использую плагин friendly_id для создания SEO-ориентированных URL для некоторых из моих моделей.

В настоящее время у меня есть модель с двумя атрибутами: name и display_name.

По сути, display_name является предпочтительным, но если оно пустое, модель возвращается к имени. Friendly_id необходимо поле для вывода URL:

Class Market < ActiveRecord::Base
  has_friendly_id :name
end

Как я могу реализовать что-то, что выглядит (логически) так:

Class Market < ActiveRecord::Base
  if self.display_name
    has_friendly_id :display_name
  else
    has_friendly_id :name
  end
end

Спасибо!

1 Ответ

2 голосов
/ 24 сентября 2010

Может как то так?

Class Market < ActiveRecord::Base
  has_friendly_id :friendly_name

  def friendly_name
    self.display_name || self.name
  end
end
...