有没有办法使用has_many关联(用户 - >上传)来使用嵌套表单?我有强大的params工作正常。用户可以上传5张图片。我在模型中使用accepts_nested_attributes_for并且上传工作正常,但有一些问题。
但是,例如当我尝试编辑用户,并使用以下方法构建新图像时
(5 - @user.uploads.count).times { @user.uploads.build }
...无论如何,它都会在嵌套表单中构建5个上传条目。表单部分如下所示:
<%= f.simple_fields_for :uploads do |i| %>
<hr>
<% user.uploads.each do |upload| %>
<% if upload.image? %>
<%= image_tag(upload.image.url(:medium), class: 'img-rounded').html_safe %>
<br>
<%= i.input :_destroy, as: :boolean,
label: false,
inline_label: 'Remove picture',
wrapper_html: { class: 'text-center' } %>
<% end %>
<% end %>
<%= i.file_field :image %>
<h4>or</h4>
<%= i.input :image_remote_url, label: 'Enter an image URL' %>
<% end %>
之前我通过Dropzone ajax表单上传图片,但是作为嵌套资源和URL到不同的上传控制器。现在,我必须在与用户配置文件编辑相同的表单上进行上传。理想情况下,我想在配置文件编辑页面上使用Dropzone,但这似乎更糟。
如果有人有关于如何处理多个文件上传的提示(新/创建和编辑/更新操作),我可以限制上传5次,我很乐意听到。此外,如果可能的话,通过嵌入式Dropzone实现多个嵌套上传将会更好。