Ruby on rails 为Rails中的回形针图像创建alias_属性

Ruby on rails 为Rails中的回形针图像创建alias_属性,ruby-on-rails,paperclip,Ruby On Rails,Paperclip,我目前正在构建一个应用程序,它有一个模型Post。我正在使用回形针gem上传图像,一切都很顺利 class Post < ActiveRecord::Base has_attached_file :headerimage, styles: {banner => "400x300#"} end 别名 但是,在我的应用程序中,它必须具有图像属性image指的是缩略图。所以,在我的模型课上,我写了 class Post < ActiveRecord::Base ha

我目前正在构建一个应用程序,它有一个模型
Post
。我正在使用
回形针
gem上传图像,一切都很顺利

class Post < ActiveRecord::Base
    has_attached_file :headerimage, styles: {banner => "400x300#"}
end
别名 但是,在我的应用程序中,它必须具有图像属性
image
指的是缩略图。所以,在我的模型课上,我写了

class Post < ActiveRecord::Base
    has_attached_file :headerimage, styles: {banner => "400x300#"}
    alias_attribute :image, :headerimage
end
class Post“400x300#”}
别名\属性:图像,:标题图像
结束
这允许我通过调用以下命令获取图像:

image=Post.first.image

这就是我想要的-但是,它从回形针中获取原始图像,因此它相当于编写以下内容:

image=Post.first.headerimage
而不是
image=Post.first.headerimage(:banner)

如何设置正确的alias_属性以访问回形针图钉?我似乎在其他任何地方都找不到答案,我也不确定回形针到底是如何工作的

我想我在逻辑上可能会做这样的事情

alias\u属性:image,:headerimage(:banner)


但这不起作用。

您可以试试这个-基本上使用参数调用原始参数,因为别名不会接受参数,但我们知道要传递的固定参数:

alias :image, :headerimage

def headerimage(name=nil)
  headerimage(name || :thumb)
end

谢谢我觉得很傻,因为我不知道我能做到:)嗯,你的问题很有用,我想诚实的Lynice,这就是你需要的。所以,
alias
需要实际的方法,而不是字符串或符号,而且它们之间不允许有逗号。另外,这个
headerimage
方法是否会在堆栈深度达到极限之前循环,直到崩溃?这到底是怎么回事?
alias :image, :headerimage

def headerimage(name=nil)
  headerimage(name || :thumb)
end