2010-09-23 3 views
2

J'ai déplacé une application Rails 2.3 vers Rails 3. L'application fonctionne réellement parfaitement, mais j'ai un problème avec les tâches rake. Il semble que le fichier config dans le fichier d'environnement ne soit pas initialisé correctement. l'erreur que je reçois est:Rake on Rails 3 problème

rake aborted! 
undefined method `cache_classes=' for #<Hash:0x3c3e850> 
/var/www/apps/nzar3/config/environments/development.rb:9 
..... 

Le fichier d'environnement est propre, et cela fonctionne. Ici l'environnement/development.rb

config.cache_classes = false 
config.whiny_nils = true 
config.action_controller.consider_all_requests_local = true 
config.action_view.debug_rjs       = true 
config.action_controller.perform_caching    = false 
config.active_support.deprecation = :log 
config.action_dispatch.best_standards_support = :builtin 

Un indice?

+0

version râteau: râteau (0.8.7) – CLod

Répondre

1

Rails3 utilise une syntaxe différente pour la configuration de votre application.

YourApp::Application.configure do 
    config.cache_classes = false 
end 

Avez-vous migrez votre application en cours d'exécution rails /path/to/rails2/app? Vous pouvez lire ce bon article pour tips about upgrading to Rails 3.

+0

ouais compagnon, j'ai oublié que la section je l'ai dans le fichier congif Appxxx :: Application.configure faire ... – CLod

+0

J'ai créé une nouvelle application rails 3 et migré pièces – CLod

+0

Je veux dire, j'avais déjà la configuration correctement mis en place. Je n'ai juste pas posté ici – CLod

0

fichier de configuration complet

App::Application.configure do 
config.cache_classes = false 
config.whiny_nils = true 
config.action_controller.consider_all_requests_local = true 
config.action_view.debug_rjs       = true 
config.action_controller.perform_caching    = false 
config.active_support.deprecation = :log 
config.action_dispatch.best_standards_support = :builtin 
end 
0

Je trouve que ce n'est que cette tâche de râteau qui utilise ActionView ne fonctionne pas

namespace :cached_assets do 
    desc "Regenerate aggregate/cached files" 
    task :regenerate => :environment do 
    include ActionView::Helpers::TagHelper 
    include ActionView::Helpers::UrlHelper 
    include ActionView::Helpers::AssetTagHelper 
    stylesheet_link_tag :all, :cache => 'a' 
    javascript_include_tag :defaults, :cache => 'b' 
    javascript_include_tag "c.js", :cache => 'c' 
    end 
end 
1

J'ai eu ce problème aussi, il était lié au plugin cache_fu étant installé. La suppression de cache_fu a fait disparaître le problème.

+0

mmm J'ai juste essayé cela, enlevé cache_fu, ayant toujours le même problème. Peu importe, je ne déploie pas cette application si souvent, alors vis-la eheh – CLod

+0

Même ici, a travaillé pour moi. Merci! – makdad

0

Cela a fonctionné pour moi: commentaire cette partie

config.action_view.debug_rjs = true 

de environments/development.rb