在向照片模型添加额外字段时,我将多张照片上传到我的模型。在代码中我硬编码“1”值到hidden_field,但我最终会改变它。回形针宝石会引发回滚,不会在帖子中插入照片。如果我删除“hidden_field”行,它将成功。有关如何在视图中向上传添加额外字段的任何想法?
<%= form_for @campaign_point_of_sale, :html => {:multipart => true }, :url => "/pos/#{@point_of_sale.id}/post/#{@campaign.id}", :method => :post do |f| %>
<%= f.hidden_field :id %>
<label>Add photo <br />
<%= f.fields_for :campaign_result_point_of_sale_photos do |builder| %>
<% if builder.object.new_record? %>
<%= builder.hidden_field :is_mount_photo, :value => "1" %>
<%= builder.file_field :photo %>
<% end %>
<% end %>
<%= f.submit(:value => "Save") %>
答案 0 :(得分:0)
知道了! 只需要使用hidden_field和file_field删除整个构建器,因此服务器不会尝试插入没有图像文件的图片(只有hidden_field值)
如果file_field值为空,可以通过使用div包围两个输入并在表单提交时删除它(使用jquery)来解决这个问题。相当便宜但有效!