Mein Seminarmodell hat eine Spalte namens teacher_id. Dieser Teil der Beziehung funktioniert. Ich kann seminar.teacher anrufen, um den Benutzer, der das Seminar unterrichtet, abzurufen.Verbindung von benutzerdefiniertem Namen abrufen
Ich möchte diese Abfrage invertieren können. Mit anderen Worten, ich muss teacher.own_seminars aufrufen, um eine Sammlung aller Seminare zu erhalten, in denen dieser Benutzer als die Lehrer-ID aufgeführt ist. Ich weiß, dass ich Seminar.wenn nennen konnte (: Lehrer => Lehrer), aber das ist klobig. Und ich denke, dass die Leistung auf diese Weise wahrscheinlich schlechter ist.
Hinweis: Einige der Benutzer sind Schüler, die über die Join-Tabelle seminar_user mit dem Seminar verbunden sind, aber ich glaube nicht, dass dies Auswirkungen auf diese Frage hat.
Dies ist das Modell-Setup, das funktioniert noch
class User < ApplicationRecord
has_many :own_seminars, :class_name => "Seminar", foreign_key: 'own_seminar_ids'
end
class Seminar < ApplicationRecord
belongs_to :teacher, class_name: "User", foreign_key: 'teacher_id'
end
Beifall nicht ganz ist!