本文介绍了如果条件为真,则用回形针应用处理器的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我有一个带有 paperclip ruby​​ gem 的模型.我定义了一个带有 2 个处理器的附加文件(thumbnailwatermark).

I have a model with paperclip ruby gem. I defined an attached file with 2 processors (thumbnail and watermark).

问题是如果条件为true,是否存在应用水印处理器的方法.(这个想法不是在没有水印处理器的情况下定义新的attached_files)

The question is if exist the way to apply the watermark processor if condition is true. (the idea it's not define new attached_files without watermark processor)

提前致谢.

我尝试使用此代码,但不起作用.如果字段 eid 存在处理带水印 else if null 处理仅缩略图

I try using this code, but dosen't works. If the field eid exist process with watermark else if null process only thumbnail

:processors => lambda { |a|
                if a.eid.nil?
                        [:thumbnail,:watermark]
                else
                        [:thumbnail]
                end
                },

推荐答案

processors 选项可以接受 proc,所以你可以让你的处理器依赖于实例:

The processors option could accept proc, so you could make your processors depend on instance:

:processors => lambda{ |attachment|
   attachment.instance.some_method_to_get_processors_here
},

这篇关于如果条件为真,则用回形针应用处理器的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

08-01 23:20