使用回形针与工厂女孩,没有图像处理程序错误

san*_*jee 8 paperclip ruby-on-rails-3 factory-bot

我正在尝试使用paperclip与factory_girl gem,但得到"no handler found error"消息.

test_should_update_category(CategoriesControllerTest):Paperclip :: AdapterRegistry :: NoHandlerError:找不到"/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
Run Code Online (Sandbox Code Playgroud)

类别迁移:: ---------------

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
Run Code Online (Sandbox Code Playgroud)

模型:

class Category < ActiveRecord::Base
attr_accessible :description, :image, :name
has_attached_file :image, :styles => { :thumb => "100x100>" }

end
Run Code Online (Sandbox Code Playgroud)

类别控制器测试文件:

require 'test_helper'

class CategoriesControllerTest < ActionController::TestCase
setup do
@category = FactoryGirl.create(:category)
end
Run Code Online (Sandbox Code Playgroud)

Joh*_*Del 11

我在我的应用程序/工厂中使用以下代码:

FactoryGirl.define do
  factory :upload do
    permalink "unique"
    upload Rack::Test::UploadedFile.new(Rails.root + 'spec/files/uploads/unique.jpg', 'image/jpg')
  end  
end
Run Code Online (Sandbox Code Playgroud)

因此,在您的应用中,您应该将类​​别的工厂更改为以下内容:

FactoryGirl.define do
  factory :category do
    name "MyString"
    description "MyText"
    image Rack::Test::UploadedFile.new(Rails.root +'test/tel1.JPG', 'image/jpg')
  end
end
Run Code Online (Sandbox Code Playgroud)