47.15.8. Formulář se dvěma modely

Odkazy:

Příklad 47.7. Metoda new v souboru řadiče projects_controller

# controller.rb
def new
    @project = Project.new
    @task = Task.new
end

Příklad 47.8. projects/new.rhtml

<h1>Nový projekt</h1>

<%= error_messages_for :project %>
<%= error_messages_for :task %>

<%= start_form_tag :action => 'create' %>
<p>
    Název projektu:
    <%= text_field :project, :name %>
</p>
<p>
    První úkol:
    <%= text_field :task, :name %>
</p>
<p>
    <= submit_tak 'Vytvořit' %<
</p>
<%= end_form_tag %>

Příklad 47.9. Metoda create v řadiči projects_controller.rb

def create
    @project = Project.new/params[:project])
    @task = @project.tasks.build(params[:task])
    if @project.save
        redirect_to :action => 'index'
    else
        render :action => 'new'
    end
end

Licence Creative Commons
Tento dokument Ruby, jehož autorem je Radek Hnilica, podléhá licenci Creative Commons Uveďte autora-Nevyužívejte dílo komerčně-Zachovejte licenci 3.0 Česká republika .