Ich bin ziemlich neu in den Schienen und habe ein bisschen Schwierigkeiten, die Zusammenhänge zu verstehen. Ich möchte ein schnelles Forum machen (nur der Thread - Post Mechanismus nichts anderes). Meine Modelle werden generiert von:
%Vor%In meinen Modellen habe ich die Assoziationen hinzugefügt:
%Vor%Auf der Show-Seite eines Threads möchte ich einen Forumpost für diesen Thread erstellen können. Ich versuche es so: Aussicht: & lt;% = notice% & gt;
%Vor%und Controller:
%Vor% Ich habe den create-Teil nicht gefunden, weil es anscheinend nicht funktioniert, nur @current_thread.forumposts.build
einzugeben, um ein Objekt zu erstellen. Was vermisse ich ?
Ich möchte, dass @post ein Objekt vom Typ forumpost ist, also kann ich mit @current_thread.forumposts.create(forumposts_params)
erstellen;
Im Moment bekomme ich den folgenden Fehler:
%Vor%Ich werde gerne mehr Daten zur Verfügung stellen, wenn es angefordert wird! .
Ich erinnere mich, dass ich gelesen habe, dass dieser Fehler auftritt, wenn foreign_key
fehlt ( Ссылка ) und so aussieht könnte Ihr Fall sein, da Sie es beim Generieren von Gerüst für Forumpost nicht eingeschlossen haben. Haben Sie forumthread_id
Spalte in Ihrer Datenbanktabelle für Forumposts? Wenn Sie nicht wissen, wovon ich rede, gehen Sie zur Datei db / schema.rb und prüfen Sie, ob Sie etwas wie:
Wenn nicht, müssen Sie eine weitere Migration generieren und ausführen, indem Sie diese fehlende foreign_key
zu Forumspost hinzufügen. Lies darüber auf Ссылка :), starte rails generate migration AddForumthreadIdToForumpost
, put etwas wie der Code unten in der neu erstellten Migrationsdatei und führen Sie rake db:migrate
:
Ich bin mir nicht sicher, ob Sie noch an diesem Problem arbeiten. Hast du accepts_nested_attributes_for
in deinem Modell ausprobiert?
Tags und Links ruby-on-rails associations