家长协会中的 CarrierWave 文件上传 store_dir
CarrierWave File Upload store_dir in parent association
我在请求模型和文档模型之间建立了关联。每个请求 has_many
个文件,每个文件 belongs_to
个请求。上传文件并将它们存储到文件夹中效果很好。目前,我的 store_dir
方法如下所示:
def store_dir
"uploads/Requests/#{model.id}"
end
但是,我想知道如何通过 request.id 然后 model.id:
保存文件
def store_dir
"uploads/#{request.id}/#{model.id}"
end
这可能吗?希望有人能指出我正确的方向。我不确定如何将请求 ID 传递到 DocumentUploader。
如果需要提供更多信息,请告诉我!
因为 model
是安装上传器的 ActiveRecord 实例,您应该能够使用 ActiveRecord 关联。由于您声明 Document
belongs_to
a Request
(并且我假设 Document
是安装上传程序的 ActiveRecord),您可以获得 Request
的 ID使用 model.request_id
(或 model.request.id
)。
def store_dir
"uploads/#{model.request_id}/#{model.id}"
end
我在请求模型和文档模型之间建立了关联。每个请求 has_many
个文件,每个文件 belongs_to
个请求。上传文件并将它们存储到文件夹中效果很好。目前,我的 store_dir
方法如下所示:
def store_dir
"uploads/Requests/#{model.id}"
end
但是,我想知道如何通过 request.id 然后 model.id:
保存文件def store_dir
"uploads/#{request.id}/#{model.id}"
end
这可能吗?希望有人能指出我正确的方向。我不确定如何将请求 ID 传递到 DocumentUploader。
如果需要提供更多信息,请告诉我!
因为 model
是安装上传器的 ActiveRecord 实例,您应该能够使用 ActiveRecord 关联。由于您声明 Document
belongs_to
a Request
(并且我假设 Document
是安装上传程序的 ActiveRecord),您可以获得 Request
的 ID使用 model.request_id
(或 model.request.id
)。
def store_dir
"uploads/#{model.request_id}/#{model.id}"
end