16

这基本上是一个嵌套形式的问题,尽管只有一个字段属于父模型。我的数据输入表单收集模型的数据 - 但是我还需要收集另一个数据元素/值 (UserID),该数据元素/值 (UserID) 实际上进入将使用详细记录创建的父记录。

AFAIK Rails 期望每个表单字段映射到一个模型,我需要创建一个未绑定的数据输入字段,我将单独使用它。

如何覆盖此默认行为并创建“自由格式/未绑定字段”?

不列颠哥伦比亚省 TIA

4

2 回答 2

43

这是我自己的应用程序中的一些内容:

通过以下方式访问它:

params[:company] and params[:user]

控制器:

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

看法:

<% 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 %>
于 2009-08-05T07:25:07.163 回答
2

对于“魔术”形式 <=>form_for使用模型映射。(http://api.rubyonrails.org/classes/ActionView/Helpers/FormHelper.html

如果您需要当前模型中的某些内容,请尝试使用http://api.rubyonrails.org/classes/ActionView/Helpers/FormTagHelper.html

有了它,您可以添加与模型分开的标签,例如

radio_button_tag

form_for块内

于 2009-08-05T07:21:06.250 回答