我正在创建一种设置向导表单,除了提供几个不同模型中的一些字段之外,您还可以同时创建多个模型。我假设有一种Rails方式可以在一个表单中组合多个“资源”,但我不知道该怎么做。如何创建一个提供多个模型字段的表单,同时利用尽可能多的内置帮助程序?
答案 0 :(得分:0)
关于如何做到这一点有一个很好的tutorial here
如果您使用inherited resources之类的内容,那么效果非常好:
<强>部分强>
#app/helpers/application_helper.rb
def attributes(resource)
resource ||= resource_class
resource.attribute_names - %w(id created_at updated_at)
end
#app/views/shared/_form.html.erb
<%= form_for resource do |f| %>
<% attributes(resource).each do |attr| %>
<%= f.text_field attr.to_sym, placeholder: attr.name, value: attr.value %>
<% end %>
<%= f.submit %>
<% end %>
#app/views/controller/new.html.erb
<%= render partial: "shared/form", locals: {resource: <<model class>>} %>