【问题标题】:Rails_admin and Active_storageRails_admin 和 Active_storage
【发布时间】:2018-09-14 16:06:47
【问题描述】:

我正在尝试通过Rails_AdminActive_Storage 上传多个文件。 这是我的代码:

  belongs_to :driver
  has_one_attached :avatar
  has_many_attached :pictures


  attr_accessor :remove_avatar
  after_save { asset.purge if remove_avatar == '1' }


  attr_accessor :remove_pictures
  after_save do
    Array(remove_pictures).each { |id| pictures.find_by_id(id).try(:purge) }
  end


  rails_admin do
    field :driver_id
    field :avatar, :active_storage
    field :pictures, :multiple_active_storage


  end

我只得到一个图片字段。我试过几次像这样复制过去的字段

rails_admin do
    field :driver_id
    field :avatar, :active_storage
    field :pictures, :multiple_active_storage
field :pictures, :multiple_active_storage
field :pictures, :multiple_active_storage


  end

我仍然只有 2 个字段,一个用于头像,另一个用于一张图片。有什么想法吗?

【问题讨论】:

    标签: rails-admin rails-activestorage


    【解决方案1】:

    首先,要删除作品,您需要这样声明。

      belongs_to :driver
      has_one_attached :avatar
      has_many_attached :pictures
    
    
      attr_accessor :remove_avatar
    
      attr_accessor :remove_pictures
    
      after_save do
        avatar.purge if remove_avatar == '1'
        Array(remove_pictures).each { |id| pictures.find_by_id(id).try(:purge) }
      end
    
    
      rails_admin do
        field :driver_id
        field :avatar, :active_storage do 
          delete_method :delete_avatar
        end
    
        field :pictures, :multiple_active_storage do 
          delete_method :delete_pictures
        end
    
      end
    

    其次,它只会向图片显示一个字段,但它是一个多上传文件,因此您可以发送任意数量的文件

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-04-15
      • 2018-11-19
      • 1970-01-01
      • 2021-05-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多