我显然有一个巨大的问题,从插件版本的回形针切换到我的应用程序中的宝石版本。我的印象是,插件和指定版本的宝石之间应该没有任何区别。不过,我并不认为这是一个简单的过渡。更新回形针从插件到宝石的问题
Rails的2.3.11和Ruby 1.8.7
我使用的插件版本是2.3.3版本,升级8月2日,2010年尝试更新这同一版本的宝石基本上被杀我的所有测试都无法加载没有加载附件的工厂模型。看起来,validate_attachment_content_type也试图验证附件的存在,并找不到它,所以一切都刚刚开始打破。同样,使用插件也没有问题,我们一直都没有遇到任何问题。另一方面,这个问题似乎并没有发生在2.3.4版之后。这是另一组问题。
基本上,从2.3.4所有版本和起来,我得到以下问题:
can't convert nil into String
/home/joshua/.rvm/gems/[email protected]_upgrade/gems/paperclip-2.3.15/lib/paperclip/storage/s3.rb:163:in `extname'
/home/joshua/.rvm/gems/[email protected]_upgrade/gems/paperclip-2.3.15/lib/paperclip/storage/s3.rb:163:in `to_file'
/home/joshua/.rvm/gems/[email protected]_upgrade/gems/paperclip-2.3.15/lib/paperclip/attachment.rb:94:in `assign'
/home/joshua/.rvm/gems/[email protected]_upgrade/gems/paperclip-2.3.15/lib/paperclip.rb:279:in `avatar='
/home/joshua/railscamp/app/app/models/organization.rb:311:in `copy_membership'
在我所有的测试访问我的组织模型
。
在这种情况下,明显的违规代码试图克隆从一个组织到另一个组织的成员资格模型,其中*行是违规呼叫。
def copy_membership(membership)
m = membership.clone
u = m.user.clone
u.organization = self
m.organization = self
begin
m.avatar = membership.avatar *
rescue RuntimeError
m.avatar = nil
end
m.user = u
m.save
m
end
这对任何人都没有任何意义吗?为什么插件会工作,但同一版本的宝石只会破坏一切?
更新:我也似乎没有任何可用的回形针耙任务。有任何想法吗?