我正在尝试使用带有factory_girl gem的paperclip但是找到了“没有找到处理程序
错误信息.
错误信息.
test_should_update_category(CategoriesControllerTest):
Paperclip::AdapterRegistry::NoHandlerError: No handler found for “/system/categories/images/000/000/001/original/tel1.JPG?1354197869”
工厂女孩档案:
FactoryGirl.define do factory :category do name "MyString" description "MyText" image { File.new(File.join(Rails.root,'test','tel1.JPG')) } end end
类别迁移:: —————
class CreateCategories < ActiveRecord::Migration def up create_table :categories do |t| t.string :name t.text :description t.string :image t.timestamps end add_attachment :categories,:image end
模型:
class Category < ActiveRecord::Base attr_accessible :description,:image,:name has_attached_file :image,:styles => { :thumb => "100x100>" } end
类别控制器测试文件:
require 'test_helper' class CategoriesControllerTest < ActionController::TestCase setup do @category = FactoryGirl.create(:category) end
解决方法
我在我的app / factory中使用以下代码:
FactoryGirl.define do factory :upload do permalink "unique" upload Rack::Test::UploadedFile.new(Rails.root + 'spec/files/uploads/unique.jpg','image/jpg') end end
因此,在您的应用中,您应该将类别的工厂更改为以下内容:
FactoryGirl.define do factory :category do name "MyString" description "MyText" image Rack::Test::UploadedFile.new(Rails.root +'test/tel1.JPG','image/jpg') end end