首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >保存多个文件时refile不起作用

保存多个文件时refile不起作用
EN

Stack Overflow用户
提问于 2018-09-05 03:40:01
回答 1查看 32关注 0票数 2

我正在使用refile上传一些相册的照片在我的项目中。

我的模型是这样的:

代码语言:javascript
复制
class Album < ApplicationRecord
  has_many :photos,dependent: :destroy

class Photo < ApplicationRecord
  belongs_to :user
  belongs_to :album
  attachment :media

我正在尝试创建一个视图,用户可以上传多个文件到一个相册。我的观点是这样的:

代码语言:javascript
复制
        <%= form_for @album, method: :put do |f| %>
          <%= f.label :name %>
          <%= f.text_field :name %>
          <div class="row">
                    <div class="col-md-4">
                        <div class="form-group">                            
                            <span class="btn btn-default btn-file">
                                <i class="fa fa-cloud-upload fa-lg"></i> Upload Photos 
                                <%= f.attachment_field :photos, multiple: true %>
                            </span>
                        </div>      
                    </div>
                </div>
          <div id="photos"><%= render 'photos/list' %></div>
          <div class="actions">
            <%= f.submit 'Save Album', class: 'btn btn-success' %>
          </div>
        <% end %>

但是我得到了这个错误:

代码语言:javascript
复制
NoMethodError in Albums#edit
Showing /home/ubuntu/workspace/app/views/albums/_form.html.erb where line #19 raised:

undefined method `photos_attachment_definition' for #<Album:0x007fd014d3d9e8>

我都快疯了。有人有灯在上面吗?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2018-09-05 04:20:55

这里的问题是我的模型应该是:

代码语言:javascript
复制
class Album < ApplicationRecord

  belongs_to :user
  has_many :photos,dependent: :destroy

  accepts_attachments_for :photos, attachment: :media

我的观点是:

代码语言:javascript
复制
 <%= f.attachment_field :photos_media, multiple: true, direct: true, presigned: true %>

现在可以工作了

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52172987

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档