Beispiele für neue Erstellungsaktionen für has_many: über Assoziationen (verschachtelt)

Ich habe diesen Code auf gefundenhttp://guides.rubyonrails.org/association_basics.html#the-has_one-through-association:

class Document < ActiveRecord::Base
  has_many :sections
  has_many :paragraphs, :through => :sections
end

class Section < ActiveRecord::Base
  belongs_to :document
  has_many :paragraphs
end

class Paragraph < ActiveRecord::Base
  belongs_to :section
end

Das ist genau das, was ich versuche, aber ich bin noch sehr neu in Rails und habe mich gefragt, ob mir jemand ein Beispiel für die Formulare und Controller zeigen könnte, die erforderlich sind, um Datensätze für dieses Setup erstellen zu können.

Ich konnte den ersten Teil erstellen (das Dokument enthält viele Abschnitte), aber ich bin fest entschlossen, herauszufinden, wie Abschnitte mit vielen Absätzen implementiert werden und wie zwischen den drei Abschnitten verwiesen werden kann. Ich habe für das obige Beispiel hoch und niedrig gesucht und würde einen Beispielcode für das Neue, das Erstellen, Aktualisieren von Aktionen und die entsprechenden Formulare WIRKLICH schätzen.

Vielen Dank im Voraus!

AKTUALISIERT: Ich freue mich sehr über Ihre Hilfe und danke für die schnelle Antwort. Vielleicht muss ich ein wenig klären.

Ich habe meine 3 Modelle (Benutzer, Publikation, Ausgabe) und sie sind in jeder ihrer eigenen Ansichten und Controller getrennt. Das Ziel ist ein Control Panel, in dem angemeldete Benutzer auf Links klicken können, um:

a) Publikationen hinzufügen / bearbeiten / löschen, die sich auf einzelne Benutzer beziehen

b) Themen zu einzelnen Veröffentlichungen hinzufügen / bearbeiten / löschen

Daher habe ich auch 3 separate Formulare (Benutzer, Veröffentlichung & Ausgabe).

In meinem publications_controller habe ich geschafft:

@publication = current_user.publications.build(params[:publication])

Welche Verknüpfungen zwischen Benutzern und Veröffentlichungen herstellen und mit dem richtigen Feld user_id im Veröffentlichungsmodell (das nicht in attr_accessible aufgeführt ist) gefüllt werden, funktioniert hervorragend.

Jetzt besteht meine Herausforderung darin, Ausgaben zu Veröffentlichungen hinzuzufügen, und hier falle ich ein wenig zu kurz. Ich habe ein Menü, in dem ich Probleme hinzufügen kann, aber ich möchte weder das Feld publication_id im Formular noch attr_accessible im Modell haben. Ich möchte über den Benutzer ein Problem mit der ausgewählten Publikation erstellen.

Es tut mir leid, wenn ich es nicht gut erklären kann, das ist alles noch sehr neu für mich und möglicherweise auch, warum ich Probleme habe, nach der richtigen Terminologie zu suchen.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage