Хорошо, поэтому я постараюсь сделать это быстро.В моем приложении пользователь преподает много курсов, и пользователь проходит много курсов через => "зачисления".
User Model:
has_many :courses
has_many :courses, :through => :enrollments, :source => "course_id", :dependent => :destroy
Course Model:
belongs_to :user
has_many :users, :through => :enrollments, :source => "user_id", :dependent => :destroy
Я настроил все в соответствии со стандартами, и многие из них благодаря ассоциации прекрасно работают.Проблема в том, что, когда я являюсь преподавателем курса и пытаюсь удалить его или пытаюсь позвонить:
@courses = current_user.courses
, я получаю эту ошибку:
ActiveRecord::HasManyThroughSourceAssociationNotFoundError in CoursesController#destroy
У меня естьТакое ощущение, что это потому, что я вызываю как обычные отношения has_many / own_to, даже если у меня уже есть зачисления has_many: through =>: и что-то смешалось.Я не уверен, как обойти это все же.В идеале я хотел бы создать метод, который бы собирал массив курсов, которые также преподает пользователь, что-то вроде current_user.teaching.Довольно потерян, любая помощь будет высоко ценится.