4
我升级我的工作应用1.9.2,但无法找到答案如下:红宝石1.9.2拉姆达与回形针
我创建了一个资产,像这样在我的控制器:
@asset = Asset.new(params)
,然后在我的模型使用lambda动态生成像这样的样式:
has_attached_file :asset,
:styles => lambda { |attachment| attachment.instance.choose_styles}
然后我检查某个值,那是在我的PARAMS像这样:
def choose_styles
if self.item_name == 'Car'
{ :small => ["200x200>"], :medium => ["400x400>"], :large => ["700x700>"], :full_screen => ["1000x700>"] }
else
........
end
问题是在1.9.2之前item_name是零,直到这已经运行,然后似乎从params中设置。这一切工作切换回1.8.7
是否有人可以看到帮助我的东西?
感谢 里克
尝试另一种语法对于lambda,例如'Proc.new {... code ...}或1.9的“stabby”语法' - > {... code ...}' – RyanScottLewis 2011-05-18 22:10:38
它应该在1.8.7和1.9.2。你确定没有其他区别吗?两种环境下的回形针宝石版本是否相同? Rails版本呢?其他插件可能不同? – 2011-09-19 22:07:49
任何解决方案?我一直面对同样的问题。在我看来,样式过程被称为7次(在任何属性设置之前2次)。基于这个要点的结论:https://gist.github.com/4663975 – Marcelo 2013-01-29 12:50:48