【发布时间】:2013-06-13 15:56:22
【问题描述】:
我正在制作一个横幅系统,我可以在其中将横幅上传到 CampaignBanner(带有描述、网址和位置)。
在视图中,我构建了这样的表单:
.page-header
%h1= t(:'.market_place.title')
.row-fluid
= form_tag update_dashboard_banners_admin_dashboard_index_path, :method => :put do
%fieldset
- @dashboard_banners.each do |dashboard_banner|
.span3
= simple_fields_for "dashboard_banners[]", dashboard_banner do |db|
= db.input :description
= db.input :target
= db.input :target_url
- dashboard_banner.build_banner if dashboard_banner.banner.nil?
= db.fields_for :banner do |f|
= f.input :data, :as => :file
%p= submit_tag t(:'buttons.update'), :class => 'btn btn-primary'
但是当我提交表单时,我得到了
param dashboard_banners 的预期数组(得到 Rack::Utils::KeySpaceConstrainedParams)
例如,在我的第一个 fields_for 中,我为 target_url 命名:
dashboard_banners[21][target_url]
我有我的 id,但在我的横幅的第二个字段中我有:
dashboard_banners[][banner_attributes][数据]
在这里你可以看到我不再有数字 21。
这是否链接到我得到的内部服务器?
【问题讨论】:
-
同样的问题...您找到解决方法了吗?
-
以上链接非常有用且内容丰富。它最终帮助我克服了这个问题。此外,一些著名的红宝石学家,包括 Avdi Grimm 和 Ryan Bates,也给出了有用的答案和解释。
标签: ruby-on-rails ruby internal-server-error fields-for