Ich verwende Dr.Nic Composite Primary Keys für Schienen (http://compositekey.rubyforge.org/)
In den Beispielen hat er has_many und gehört zu relation, aber nicht has_and_belongs_to_many
Meine Assoziation funktioniert gut von Büchern zu Genres (Bücher hat einen zusammengesetzten Schlüssel des Titels und Autors), aber Genre zu Büchern versucht, die Spalte book_id abzufragen, die in der Join-Tabelle nicht existiert, und löst einen Fehler aus.
%Vor% Bearbeiten: Ich habe es auch mit der Option :association_foreign_key
im Genre-Modell
Gemäß dem Ruby on Rails Style Guide :
Lieber has_many: bis has_and_belongs_to_many. Mit has_many: through können zusätzliche Attribute und Validierungen für das Join-Modell verwendet werden.
Das würde dein Problem lösen: Du hättest nur has_many und gehört zu Relationen, kein HABTM;)
In Ihrem Fall:
%Vor%Sie müssen möglicherweise den Tippfehler für den Fremdschlüssel ändern, ich bin nicht vertraut mit primären zusammengesetzten Schlüsseln.
Tags und Links ruby-on-rails