Перемещение запроса от представления к модели

У меня есть две непривязанные модели - вехи и пользователи. (Мои вехи на самом деле принадлежат компаниям, и у компаний много вех.)

У каждой вехи есть пользователь, ответственный за нее - в моей форме вехи для поиска и выбора пользователей я использую следующее:

<%= f.input :milestone_user, :as => :select, :collection => User.find(:all, :order => "name ASC") %>

Это дает мне user_id, который я преобразовал в одном представлении в имя, как показано ниже:

<%= User.find(milestone.milestone_user).name %>

Это работает нормально, но я хочу использовать его в нескольких представлениях сейчас, и мне не нравится наличие запроса в моих представлениях.

Я попытался перенести это в свою модель пользователя, но не знаю, как это сделать. Я пробовал это в модели:

  scope :username, lambda { where("id = milestone_user")}

И это, на мой взгляд:

<%= User.username.first_name %>

Но он жалуется на неопределенный метод для first_name ..

Заранее спасибо

7
задан Jenny Blunt 27 August 2011 в 11:57
поделиться