我是ror和paperclip的新手。 我使用paperclip上传文件,我想知道paperclip如何确定文件ID。例如在我的User模型中,我添加了paperclip附件“has_attachment_file”,然后我发现在数据库中(我使用sqlite3),表“User”中有四个新列,包括文件名,文件类型,上传时间和文件大小。但是我找不到这个列的文件ID,因为我可以从user.file.id中检索。 paperclip在哪里存储这些东西?
答案 0 :(得分:1)
附件不会与User
相关联存储 - 它直接存储在其上。这就是为什么您的User
表格中有额外的列,以及该文件没有id
的原因。
如果您希望User
包含许多文件,则需要单独对其进行建模并使用Rails' has_many
。类似的东西:
class User < ActiveRecord::Base
has_many :images
end
class Image < ActiveRecord::Base
has_attached_file :file
belongs_to :user
end