2011-10-16 20 views
25

मैं अपने ऐप के लिए हेरोोकू को तैनात करने के लिए संपत्तियों को प्रीकंपाइल करने की कोशिश कर रहा हूं लेकिन त्रुटि का पालन करना है।रेल रेक संपत्तियां: उत्पादन के लिए प्रीकंपाइल

जब चल रहा है:

RAILS_ENV=production bundle exec rake assets:precompile 

त्रुटि:

/bin/rake assets:precompile:all RAILS_ENV=production RAILS_GROUPS=assets 
rake aborted! 
Please install the postgresql adapter: `gem install activerecord-postgresql-adapter` (pg is not part of the bundle. Add it to Gemfile.) 

मैंने बहुत कोशिश की, लेकिन क्योंकि मैं विकास SQLite में और निम्न Gemfile

gem "rails", "~> 3.1.0" 

group :production do 
    gem 'pg' 
end 

group :development, :test do 
    gem 'sqlite3' 
end 

gem 'sass-rails', "~> 3.1.0" 

group :assets do 
    gem 'coffee-rails', "~> 3.1.0" 
    gem 'uglifier' 
    gem 'compass', '~> 0.12.alpha.0' 
    gem 'html5-boilerplate' 
end 

उत्पादन Postgresql में उपयोग कर सकते हैं ' यह काम नहीं कर रहा है।

अगर यह महत्वपूर्ण है, लेकिन मेरी database.yml तरह लग रहा है मैं नहीं जानता:

production: 
    adapter: postgresql 
    host: localhost 
    database: db 
    encoding: unicode 
    username: user 
    password: '' 
+1

आप एक देवदार ढेर पर इस की कोशिश की? 'heroku create --stack cedar' – daniel

उत्तर

54

पुराना सवाल लेकिन स्वीकार किए जाते हैं जवाब वास्तव में इस सवाल का जवाब नहीं है - और मैं सिर्फ एक खोज में यह पाया तो मुझे लगता है कि यह प्रासंगिक है।

त्रुटि का कारण यह है कि gem 'pg' उत्पादन मणि समूह में है।
जब आप rake assets:precompile चलाते हैं तो उत्पादन वातावरण का उपयोग किया जाता है। तो यह उत्पादन वातावरण लोड करने की कोशिश कर रहा है लेकिन आपके पास स्थापित सभी निर्भरताएं नहीं हैं।

RAILS_ENV=production bundle exec rails server चल रहा है शायद आपको एक ही त्रुटि देगा।

मैं दो अलग अलग समाधान

1) यदि आप अपने ऐप के जड़ में एक .bundle/config फ़ाइल है यह देखने के लिए के बारे में सोच सकते हैं। यदि आप करते हैं, तो जांचें कि क्या यह WITHOUT :production या इसी तरह का है। या तो उस पंक्ति या पूरे .bundle निर्देशिका को हटा दें और फिर bundle चलाएं।

2) Gemfile

gem :development, :production do 
    gem 'pg' 
end 

में जबकि :production समूह
रन bundle फिर

वर्ष सामान को लाने के लिए क्षमा करें ... को हटाने

+4

क्षमा करें, मैंने गलती से आपको कम किया है लेकिन अब मैं इसे पूर्ववत नहीं कर सकता :(- मुझे वास्तव में आपका उत्तर उपयोगी पाया गया है –

+0

@ शेरविनयु बस फिर डाउनवोट आइकन पर क्लिक करें और आपका डाउनवोट रद्द कर दिया जाएगा। –

+0

दुर्भाग्य से @ डेविड टुइट , यदि आप थोड़ी देर के लिए नहीं हो सकते हैं - आपका डाउनवोट लॉक हो जाता है जब तक कि उत्तर संपादित नहीं किया जाता है। –

संबंधित मुद्दे