Похоже, вы, вероятно, хотите использовать has_many
с какой-то моделью, описывающей отношения между пользователями и встречами:
# models/user_appointment.rb
class UserAppointment < ActiveRecord::Base
belongs_to :user
belongs_to :appointment
end
# models/appointment.rb
class Appointment < ActiveRecord::Base
has_many :user_appointments
has_many :users, :through => :user_appointments
end
# models/user.rb
class User < ActiveRecord::Base
has_many :user_appointments
has_many :appointments, :through => :user_appointments
end
Конечно, вы, вероятно, также захотитепредставлять владельца назначения.Вы можете расширить свою модель Appointment
, чтобы отразить, кому она действительно принадлежит.Можно указать поле отношения в UserAppointment
, чтобы описать, является ли пользователь владельцем или подписчиком, но может быть проще просто добавить отношение belongs_to
к модели назначения:
# models/appointment.rb
class Appointment < ActiveRecord::Base
has_many :user_appointments
has_many :users, :through => :user_appointments
belongs_to :owner, :class_name => 'User'
end