Rails - User Input for Multiple models on a single form - How

前端 未结 2 858
天涯浪人
天涯浪人 2020-12-05 03:11

This is basically a nested form question, albeit with only one field that belongs to a parent model. My data entry form collects data for a model - however I also need to co

相关标签:
2条回答
  • 2020-12-05 03:55

    Heres something from my own app:

    Access it by:

    params[:company] and params[:user]
    

    Controller:

    @company = Company.new
    @user = User.new
    

    View:

    <% form_for @company, :url => companies_path do |f| %>
      <%= f.error_messages %>
      <p>
        <%= f.label :name %><br />
        <%= f.text_field :name %>
      </p>
      <p>
        <%= f.label :website %><br />
        <%= f.text_field :website %>
      </p>
    <hr />
        <% fields_for @user do |u| %>
        <p>
            <%= u.label :email %><br />
        <%= u.text_field :email %>
        </p>
        <p>
            <%= u.label :username %><br />
        <%= u.text_field :username %>
        </p>
        <p>
            <%= u.label :password %><br />
        <%= u.password_field :password %>
        </p>
      <p>
        <%= u.label :password_confirmation %><br />
        <%= u.password_field :password_confirmation %>
      </p>
        <% end %>
      <p>
            <%= f.submit "Submit" %>
        </p>
    <% end %>
    
    0 讨论(0)
  • 2020-12-05 03:55

    For the "magic" form <=> model mapping form_for is used. (http://api.rubyonrails.org/classes/ActionView/Helpers/FormHelper.html)

    If you need something out of the current model try using http://api.rubyonrails.org/classes/ActionView/Helpers/FormTagHelper.html

    With that you can add tags separate from the model, eg

    radio_button_tag
    

    inside the form_for block

    0 讨论(0)
提交回复
热议问题