gpt4 book ai didi

ruby-on-rails - Rails Admin With Dragonfly - 编辑。不存在文件

转载 作者:行者123 更新时间:2023-12-02 16:04:53 24 4
gpt4 key购买 nike

使用Rails AdminDragonfly 。但是,当我创建一个带有附件的新帖子时,将 :ob 连接到 Dragonfly 并想要对其进行编辑。它说“未选择文件”。因为它没有发现已经存在一个文件?

在我的rails_admin中我已经做到了这一点。

edit do
field :name
field :information
field :ob, :dragonfly
field :document_categories
end

这是我的模型:

class Document < ActiveRecord::Base
has_and_belongs_to_many :document_categories


after_commit :generate_versions, on: :create
dragonfly_accessor :ob


validates :name, :ob, presence: true

def generate_versions
DocumentWorker.perform_async(self.id)
end

def convertable_image?
unless self.try(:ob).nil?
self.try(:ob).mime_type.include?("image") || self.try(:ob).mime_type.include?("pdf")
else
return false
end
end

def respond_with_type
case self.try(:ob).mime_type.split("/")[1]
when "vnd.ms-powerpoint" , "vnd.openxmlformats-officedocument.presentationml.presentation", "application/vnd.openxmlformats-officedocument.presentationml.template"
"powerpoint"
when "application/vnd.ms-excel" , "vnd.openxmlformats-officedocument.spreadsheetml.sheet"
"excel"
when "application/msword" , "vnd.openxmlformats-officedocument.wordprocessingml.document"
"word"
else
self.try(:ob).mime_type.split("/")[1]
end
end
default_scope{order("name ASC")}
end

这是我的架构:

create_table "documents", force: :cascade do |t|
t.string "name"
t.string "ob"
t.datetime "created_at", null: false
t.datetime "updated_at", null: false
t.string "ob_uid"
t.string "ob_name"
t.text "information"
end

我还需要做什么才能让它拾取文件吗?

https://github.com/sferik/rails_admin

https://github.com/markevans/dragonfly

最佳答案

我设法使用您提供的配置重现您的问题,并且对我有用的修复结果非常简单:只需文档中删除ob

说明:默认情况下,Dragonfly 将磁盘上的附加文档(在文件存储中)存储到 Dragonfly initializer 中指定的目录中。 。在数据库中,Dragonfly 仅存储文档的名称和 UID。在您的情况下,它是您正确添加到架构中的 ob_uidob_name 列。

所以,除非你配置了一些custom store对于文档,我假设您使用默认文件存储,并且不需要 ob 列。事实上,它混淆了 rails_admindragonfly support code事实上,编辑页面总是错误地显示“未选择文件”。

修复后添加图像(为简单起见,我从 Rails_admin 中的模型和编辑操作中删除了 document_categories 关联):

Adding an image after the fix

关于ruby-on-rails - Rails Admin With Dragonfly - 编辑。不存在文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35846179/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com