【发布时间】:2015-12-06 15:36:58
【问题描述】:
在 rails 4.2.0 中,我使用 paperclip 进行文件上传。但是它会抛出类似Errno::EACCES (Permission denied @ dir_s_mkdir - /files) 的错误,我该如何解决这个问题?
当我运行gem list paperclip 时,我得到了如下列表
paperclip (4.3.0, 4.2.2, 4.2.0, 2.4.5)
在控制器中,我尝试了两种方式,一种是@file = Asset.new(:document=>params[:asset][:document]),另一种是
@file = Asset.new(user_params)
def user_params
params.require(:asset).permit(:document)
end
在模型中,
attr_accessible :status, :document_file_name, :document_content_type, :document_file_size
attr_accessible :document
has_attached_file :document,
:url => '/files/:assetable_id/:basename.:extension',
:path => "/files/:assetable_id/:basename.:extension",
:storage => :filesystem
我该如何解决这个权限被拒绝的问题?
【问题讨论】:
-
我认为您正在使用 aws-s3 作为存储。如果是这样,请在
s3上检查您的存储桶可访问性。 -
没有。我没有使用 s3,我正在尝试将其保存在 localhost 本身中。
-
您尝试保存文件的文件夹的完整路径是什么?
标签: ruby-on-rails ruby ruby-on-rails-4 paperclip asset-pipeline