2013-02-04 33 views
5

當運行「的Heroku運行rake」我得到這個錯誤:Heroku的運行耙>沒有這樣的文件加載 - 攤販

no such file to load -- faker 
/app/lib/tasks/sample_data.rake:1:in `require' 
/app/lib/tasks/sample_data.rake:1:in `<top (required)>' 

我有寶石「騙子」,「0.3.1」項下組:發展,:在Gemfile中做測試。

我需要 '騙子' 在sample_data.rake

source 'https://rubygems.org' 

gem 'rails', '3.2.11' 
gem 'gravatar_image_tag', '0.1.0' 

group :development, :test do 
    gem 'sqlite3', '1.3.5' 
    gem 'rspec-rails', '2.8' 
gem 'guard-spork', '1.2.0' 
gem 'faker', '0.3.1' 
    gem 'spork', '0.8.4' 
    gem 'will_paginate', '3.0' 
gem 'webrat', '0.7.1' 
gem 'capybara', '1.1.2' 
gem 'annotate', '2.5.0' 
gem 'factory_girl_rails', '1.0' 
end 

# Gems used only for assets and not required 
# in production environments by default. 
group :assets do 
    gem 'sass-rails', '3.2.5' 
    gem 'coffee-rails', '3.2.2' 
    gem 'uglifier', '1.2.3' 
end 

gem 'jquery-rails', '2.0.2' 

group :production do 
    gem 'pg', '0.12.2' 
end 
+1

能否請您包括您的Gemfile – gabrielhilal

+1

我只是添加gemfile到原來的帖子 –

回答

8

Heroku的默認不安裝testdevelopment寶石。

如果你想在你的生產加載fake,你應該從group :development, :test do刪除gem 'faker', '0.3.1'並將其放置任何組之外:

source 'https://rubygems.org' 
    gem 'rails', '3.2.11' 
    gem 'gravatar_image_tag', '0.1.0' 
    gem 'faker', '0.3.1' 

    group :development, :test do 
    gem 'sqlite3', '1.3.5' 
    ... 

但是,如果你不希望加載fake,你必須確保你的require fake只有在任務被調用時才需要:

task :sample_data => :environment do 
    require 'faker' #must be inside the task. 
    ... 
end 

希望它有幫助。

編輯

你可以告訴捆紮機不被加載寶石:

gem 'faker', '0.3.1', :require => false 
+0

我已經把耙子放在羣組之外,正如你在我發表原文之前所說的那樣。我仍然收到同樣的錯誤。現在再次檢查一遍。 –

+0

你想在你的製作中加載'faker'嗎? – gabrielhilal

+0

沒有沒有生產,只有發展。 –

1

我得到這個問題與 「on Rails的擦3教程」。 每gabrielhilals答案,修復是移動需要「冒牌貨」的任務

之前修復裏面:

require 'faker' 
namespace :db do 
    desc "Fill database with sample data" 
    task :populate => :environment do 
    ... 
    ... 
    end 
end 

修復後:

namespace :db do 
    require 'faker' 
    desc "Fill database with sample data" 
    task :populate => :environment do 
    ... 
    ... 
    end 
end 
相關問題