Ich habe durch die folgenden tutorial gelesen und fanden die merkwürdige Linie:Rails Verbände: belongs_to has_many Verwirrung
feststellen, dass die Funktion erstellen so geschrieben ist, dass es eine hat seine @post
bevor ein @comment
zu schaffen.
Sie können die Unterstützung Controller-Code sehen:
Class CommentsController < ApplicationController
----
def create
@post = Post.find(current_post)
@comment = @post.comments.create(post_params) ## 'Essential stuff'
respond_to do |format|
if @comment.save
format.html { redirect_to action: :index, notice: 'Comment was successfully created.' }
format.json { render :show, status: :created, location: @comment }
else
format.html { render :new }
format.json { render json: @comment.errors, status: :unprocessable_entity }
end
end
end
----
end
der Tat "current_post
" bedeutet, dass die Post vor dem Kommentar erstellt wurde.
Aber was, wenn ich möchte, dass beide gleichzeitig erstellt werden? Angenommen, mein USER has_many
EMAILS und jeder EMAIL belongs_to
ein USER. Wenn ich einen neuen Benutzer erstelle, möchte ich vielleicht ein erweiterbares Formular haben, das es dem Benutzer erlaubt, eine, zwei, drei oder zwanzig E-Mails hinzuzufügen, während er sein Konto erstellt.
Wie könnte dies getan werden?
haben auch Blick auf diese - http://railscasts.com/episodes/196-nested-model-form-part-1. –