【发布时间】:2012-06-26 14:38:19
【问题描述】:
(图片属于帖子)
图片上传器有效,但仅当我在 Post Edit 上上传图片时。我希望在创建帖子时上传图像。
图片上传(“”)在新帖子表单中,所以我猜测 Carrierwave 正在尝试在创建帖子之前将图像上传到指定路径,导致它不知道在哪里上传。
这是 ImageUploader 文件:
class TrackImageUploader < CarrierWave::Uploader::Base
def cache_dir
"#{Rails.root}/tmp/uploads"
end
include CarrierWave::RMagick
#storage :file
#storage :fog
def store_dir
"uploads/#{model.class.to_s.underscore}/#{mounted_as}/#{model.id}"
end
version :featured do
process :resize_to_fill => [210, 145]
end
def extension_white_list
%w(jpg jpeg gif png)
end
end
我猜上面代码中的 store_dir 负责将图像保存在 Amazon S3 上的相应路径中。
我将如何制作它以便在发布后上传图片,以便它可以获取 Post.id ?
【问题讨论】:
-
你能把模型代码也发一下吗?
-
@John 给你:gist.github.com/2994293 谢谢!
-
嗯,您可以尝试在模型中使用 AR 回调,看看强制保存是否有帮助。 api.rubyonrails.org/classes/ActiveRecord/Callbacks.html
-
最后,如果您的代码托管在任何其他类似网站的 github 上,您能否给我们您的应用程序的链接,以便我们尝试使用它并找到问题?
-
onvard.com/curators_guide - 这是网站。您只需单击绿色按钮并在其中上传图像。目前图像确实上传,但都被扭曲了。但是当我们编辑曲目并上传相同的图像时,图像的大小会完美契合。奇怪..
标签: ruby-on-rails ruby-on-rails-3 image amazon-s3 carrierwave