2013-06-23 82 views
1

我正在尝试使整个下午的回形针插值工作,但仍然不成功。为什么不能使用Paperclip内插?

下面是如何我已经设置了图片模型:

has_attached_file :image, 
        :styles => { :thumb => '300x300#', 
           :medium => "300x300>", 
           :original => "900x900>" }, 

        :path => ":rails_root/public/images/:user_id/:style/:basename.:extension", 
        :url => "/images/:user_id/:style/:basename.:extension" 

/config/initializers/paperclip.rb是以下:

Paperclip.options [:command_path] = “/ usr/local/bin”

module Paperclip 
    module Interpolations 
     def user_id attachment, style_name 
      attachment.instance.user_id.to_s 
     end 
    end 
end 

但是每次保存文件时,文件都会保存为

/images//original/file-name.jpg 

用户的ID缺失。

这个样本有什么问题?我仍然无法找到Paperclip设置的正确配置。我会非常感谢每一个帮助。

谢谢

+0

确定对象具有USER_ID出现?你能提供一些Image对象吗? –

+0

你是什么意思,user_id存在? – user984621

+0

如果'image'对象的'user_id'属性为空,那么url将不包含相应的值。 –

回答

1

尝试在你的图像模型添加此

Paperclip.interpolates :user_id do |attachment, style| 
    attachment.instance.user_id.to_s 
end 
+0

我只是试过它和相同的...'user_id'部分仍然是空的 – user984621

+0

你确定图像与用户正确关联吗?你能通过Rails控制台连接吗? – timpone

相关问题