回答:电话model
是多余的。应该只有一个,并且此示例中的最后一个是获胜者。我在滥用表单对象 DSL。:/
我有一个 Rails 4.1 表单中的改革表单对象,其结构类似于......
表单对象
class MyForm < Reform::Form
include Composition
model :user
model :user_group
property :name, on: :user_group
property :email, on: :user
end
控制器
# ...
@form = MyForm.new(user: User.new, user_group: UserGroup.new)
# ...
看法
<%= form_for(@form) do |f| %>
<%= f.text_field(:name) %>
<%= f.email_field(:email) %>
<% end %>
呈现的 HTML
<input type="text" name="user_group[name]" id="user_group_name">
<input type="email" name="user_group[email]" id="user_group_email">
我的问题是为什么这些字段似乎忽略了模型映射并将它们呈现为错误的模型名称?我在这里做错了什么?