belongs_to
Verein erwartet eine association_id
Spalte in es entsprechende Tabelle ist. Da Autos zu einem Benutzer gehören, sollte die Autos Tabelle eine user_id
Spalte haben. Dies kann auf 2 Arten erreicht werden.
erste, können Sie die Spalte erzeugen, wenn Sie das Modell
rails g model car user_id:references
oder fügen Sie die user_id erstellen, nachdem Sie das Modell wie Richard Brown Antwort erstellen. Seien Sie vorsichtig, wenn Sie integer
anstelle von references
verwenden, müssen Sie den Index selbst erstellen.
rails g migration add_user_id_to_cars user_id:integer
dann in der Migration erzeugt, fügen
add_index :cars, :user_id
UPDATE:
Als Joseph in den Kommentaren erwähnt hat, die Notwendigkeit, den Index manuell bereits in der aktuellen Version adressiert wurde hinzufügen von Schienen. Ich denke, es wurde in Rails 4 eingeführt. Sie können mehr davon in der official Rails guide for migrations lesen. Der Kern von ihm läuft die folgende Generator
bin/rails g migration add_user_to_cars user:references
eine Migration mit einer Linie ähnlich wie
add_reference :cars, :user, index: true
Dieses eine Tabelle user_id
Spalte in die Autos hinzuzufügen erstellen und es wird zugleich die Spalte zu indiziert werden.
Sie haben keine Notwendigkeit für eine 'cars_users' Tabelle, da Sie Beziehung keine many-to-many haben. – Zippie