Ich habe gerade eine neue Migration und Modellbeziehungen eingerichtet, und in der Konsole bekomme ich beim Testen der Beziehung zwischen Tabellen den folgenden Fehler: NameError: nicht initialisierte Konstante.
Hat jemand eine Idee was falsch ist?
Danke
Bearbeiten:
Hier ist der Fehler
%Vor%Code aus der ProfileNotification-Migration:
%Vor%Nun, ich habe das Problem herausgefunden. Als ich ruby script / generate model ausführte, tippte ich ruby script / generate model ProfileNotifications. Als ich ruby script / generate model ProfileNotification (singular) eingegeben habe, funktionierte es. Namenskonventionen töten mich. Danke für die Hilfe.
Es bricht, weil Sie Profile::ProfileNotification
referenzieren, das nicht existiert.
Rails betrachtet dies als ein Modell mit dem Namen ProfileNotification
, das sich im Namespace Profile
befindet, aber Ihr Kommentar legt nahe, dass Profile
eine andere Modellklasse und kein Namespace ist.
Aufgrund der von Ihnen geposteten Migration sind Sie mit der Rails-Namenskonvention für Eins-zu-viele-Beziehungen nicht vertraut. So soll es aussehen:
%Vor% Wenn Sie nun Profile.find(1).notifications
ausführen, sollten Sie eine Liste der zugehörigen Benachrichtigungen für dieses Profil erhalten.
Weitere Informationen: Active Record Associations
Tags und Links ruby-on-rails