Ответ 1
Просто передайте некоторые параметры belongs_to
:
belongs_to :creator, :class_name => "User", :foreign_key => "user_id"
Это указывает, что метод creator
будет User
объектом, ссылающимся на поле user_id
.
Мне интересно, есть ли способ сделать это с помощью рельсов или нет. В основном у меня есть модель пользователя и модель события. Событие создается пользователем, и я хочу иметь внешний ключ (user_id) в модели событий, который указывает, кто создал событие. Кроме того, у события может быть много пользователей, которые посещают его, поэтому модель событий становится чем-то вроде
belongs_to :user
has_many :users, :through => :guests #suppose i have the guest model
и пользовательская модель выглядит примерно так:
has_many :events, :through => :guests
Я еще не пробовал эту ассоциацию, но хочу сказать
e = Event.find(1)
e.creator #returns the user who created this event
вместо
e.user
Есть ли способ сделать это?
Просто передайте некоторые параметры belongs_to
:
belongs_to :creator, :class_name => "User", :foreign_key => "user_id"
Это указывает, что метод creator
будет User
объектом, ссылающимся на поле user_id
.