В моем приложении rails пользователь может создавать курсы и школы (группы). Каждый раз, когда пользователь создает курс или школу, их user_id хранится в таблице базы данных для курса или школы, поэтому пользователь has_many: школы и курсы, а также школа или курс принадлежит пользователю:. Кроме того, пользователь может посещать курсы и присоединяться к школам (как к студенту или профессору) с моделью has_many через отношения (школьные группы для школ, которые имеют: user_id, school_id и: role [string], а также для курсов student_users (и Professor_users) который имеет: user_id, course_id и:. ролевую [строка] Мой вопрос, в модели пользователя можно просто указать один раз, что:has_many через приложение Ruby on Rails
has_many :schools, :dependent => :destroy
has_many :courses, :dependent => :destroy
has_many :schoolgroups, :dependent => :destroy
has_many :student_users, :dependent => :destroy
has_many :professor_users, :dependent => :destroy
или я должен иметь модель пользователя, которая выглядела так :
has_many :schools, :dependent => :destroy
has_many :courses, :dependent => :destroy
has_many :schoolgroups, :dependent => :destroy
has_many :schools, :through => :schoolgroups
has_many :student_users, :dependent => :destroy
has_many :courses, :through => :student_users
has_many :professor_users, :dependent => :destroy
has_many :courses, :through => :professor_users
Вы не можете указать несколько ассоциаций с тем же именем ('курсы'). Не уверен, что это то, что вы здесь здесь? – polarblau
Да, я думаю, что я должен изменить имя полей курса «курс» и «школа» в обеих таблицах отношений, а затем указать внешний ключ –