2010-12-10 4 views
0

Dans mon projet, j'utilise des balises liquides personnalisées et j'ai créé un dossier appelé « Liquid » dans mon répertoire « lib » et là j'avoir un module liquide appelé aides,Rails fichiers Lib Erreur lors du chargement

module Liquid::Helpers 

end 

Ainsi, l'arborescence du projet est le suivant

racine

--> lib 

     --> Liquid 

Et je suis en train d'enregistrer mes tags dans mon dossier environment.rb

Liquid::Template.register_filter(Liquid::Helpers) 

Pour charger mes fichiers lib lorsque le serveur démarre, j'essaie ceci dans application.rb

config.autoload_paths << File.join(Rails.root.to_s, "lib") 

Mais je reçois l'erreur suivante

« : liquide non initialisée constante: : (Helpers NameError)

Que suis-je manque ici, quelqu'un peut me aider, merci à l'avance

acclamations

sameera

Mise à jour -

Je suis sur Rails3 avec Ubuntu. Ce qui suit est tout mon code d'erreur

`<top (required)>': uninitialized constant Liquid::Helpers (NameError) 
    from <project path>/config.ru:3:in `require' 
    from <project path>/config.ru:3:in `block in <main>' 
    from /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.2.1/lib/rack/builder.rb:46:in `instance_eval' 
    from /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.2.1/lib/rack/builder.rb:46:in `initialize' 
    from <project path>/config.ru:1:in `new' 
    from <project path>/config.ru:1:in `<main>' 
    from /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.2.1/lib/rack/builder.rb:35:in `eval' 
    from /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.2.1/lib/rack/builder.rb:35:in `parse_file' 
    from /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.2.1/lib/rack/server.rb:162:in `app' 
    from /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.2.1/lib/rack/server.rb:248:in `wrapped_app' 
    from /usr/local/lib/ruby/gems/1.9.1/gems/rack-1.2.1/lib/rack/server.rb:213:in `start' 
    from /usr/local/lib/ruby/gems/1.9.1/gems/railties-3.0.0/lib/rails/commands/server.rb:65:in `start' 
    from /usr/local/lib/ruby/gems/1.9.1/gems/railties-3.0.0/lib/rails/commands.rb:30:in `block in <top (required)>' 
    from /usr/local/lib/ruby/gems/1.9.1/gems/railties-3.0.0/lib/rails/commands.rb:27:in `tap' 
    from /usr/local/lib/ruby/gems/1.9.1/gems/railties-3.0.0/lib/rails/commands.rb:27:in `<top (required)>' 
    from script/rails:6:in `require' 
    from script/rails:6:in `<main>' 

Répondre

0

Je ne suis pas un niveau assez élevé encore demander des éclaircissements, mais mon premier conseil est de clarifier votre question de la manière suivante (considérer ce conseil solide pour l'affichage tout question nulle part):

  • liste

    les versions de rails, liquide, pierres précieuses, rubis, etc que vous utilisez (en particulier la version rails)

  • copier-coller la sortie complète de votre terminal où la un message d'erreur apparaît. Bien que vous ne puissiez pas comprendre cette sortie, il est utile pour quelqu'un d'autre de déboguer votre situation. Copier-coller à partir du terminal (y compris la commande exécutée) laisse nulle question

  • fournir une meilleure information sur la structure de votre fichier. Encore une fois, un copier-coller terminal est parfait. De la racine de votre rail, vous pouvez exécuter la commande find lib (à moins que vous ne soyez sur Windows, auquel cas vous ne pouvez pas utiliser find et il est temps d'envisager de passer à OSX ou à ubuntu).

Voici un exemple d'un terminal copier-coller qui comprend toutes ces informations:

dhcp-c-200:foo luke$ rails -v && gem -v && ruby -v && gem list | grep liquid 
Rails 2.3.5 
1.3.5 
ruby 1.8.7 (2009-06-12 patchlevel 174) [universal-darwin10.0] 
dhcp-c-200:foo luke$ find lib 
lib 
lib/Liquid 
lib/Liquid/some_module_file.rb 
lib/tasks 
dhcp-c-200:foo luke$ script/server 
=> Booting Mongrel 
=> Rails 2.3.5 application starting on http://0.0.0.0:3000 
/System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:440:in `load_missing_constant': uninitialized constant Liquid::Template (NameError) 
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:80:in `const_missing' 
    from /Users/luke/Sites/foo/config/environment.rb:43 
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require' 
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `require' 
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:156:in `require' 
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:521:in `new_constants_in' 
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8/gems/activesupport-2.3.5/lib/active_support/dependencies.rb:156:in `require' 
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/gems/1.8/gems/rails-2.3.5/lib/commands/server.rb:84 
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `gem_original_require' 
    from /System/Library/Frameworks/Ruby.framework/Versions/1.8/usr/lib/ruby/1.8/rubygems/custom_require.rb:31:in `require' 
    from script/server:3 
dhcp-c-200:foo luke$ cat lib/Liquid/some_module_file.rb 
module Liquid 

end 

module Liquid::Foo 

enddhcp-c-200:foo luke$ 

... dans un terminal.

+0

Salut @luke, Merci de remarquer, mis à jour la question: D – sameera207

Questions connexes