ruby-on-rails - 有没有办法让多个文件上传变成多个模型
问题描述
所以我有一个名为 Photo 的模型,显然我不想一次上传一张照片,所以我用多文件上传替换了新的照片表单。我不太确定如何使这些文件上传变成独特的照片模型。
<%= bootstrap_form_with(:model => photo, :local => true) do |form| %>
<%= form.file_field :image, :multiple => true, :direct_upload => true %>
<%= form.submit %>
<% end %>
编辑:我在 Rails 6.0.0 rc2 上使用 Active Storage
解决方案
您不能制作多个照片模型。您可能是指多条记录。模型是数据库中表的蓝图。
提交表单时检查终端日志,您可能会在参数中看到类似的内容: photo => [ files here ]
因此,在您的控制器创建中,您必须遍历数组并为每张照片创建一个照片记录,如下所示:
def create
params[:photo].each do |photo|
Photo.create(file: photo.file)
end
推荐阅读
- sql - 在 Oracle DB 中过滤联接
- java - 如何使用 Single Live Event 打开包含 Room 数据的对话框片段?
- python - 如何将不和谐频道与python链接
- azure-sql-database - 从 Azure SQL 弹性作业步骤中发送电子邮件
- c++ - WinHttpAddRequestHeaders:在标头中发送证书时为87 - C++
- ethereum - 更新实时智能合约
- javascript - D3 json() 函数适用于本地文件,但不适用于将本地 var 设置为 json
- python - Python程序不写入文件
- google-cloud-platform - gsutil / gcloud 按限制和分页存储列表文件
- linux - 我可以在 PyTorch 中暂时禁用 CUDA 吗?