2010-12-10 5 views
0

In meinem Projekt verwende ich einige benutzerdefinierte Flüssigkeit Tags und ich habe einen Ordner namens ‚Liquid‘ in meinem ‚lib‘ Verzeichnis erstellt und dort habe ich eine Flüssigkeitsmodul Helfer genannt,Rails Lib-Dateien geladen werden Fehler

module Liquid::Helpers 

end 
Wurzel

--> lib 

     --> Liquid 

so ist der Projektbaum als

folgt Und ich versuche, meine Tags in meiner environment.rb-Datei registrieren

Zu meinen lib Dateien geladen werden, wenn der Server startet, ich bin diese

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

in application.rb versucht, aber ich bin immer die folgenden Fehler

‚: nicht initialisierte Konstante Flüssigkeit: : Helfer (Nameerror)

Was bin ich hier fehlt, kann mir jemand helfen, danke im voraus

prost

sameera

Update -

ich auf Rails3 mit Ubuntu bin. Es folgt meine volle Fehlercode

`<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>' 

Antwort

0

Ich bin kein ausreichend hohen Niveau noch um Fragen zu stellen klären, aber mein erster Ratschlag ist Ihre Frage in der folgenden Art und Weise zu klären (man denke an diese solide Beratung für die Entsendung jeder Frage überall):

  • Liste der Versionen von Schienen, Flüssigkeit, Edelsteine, Rubin, etc, die Sie (vor allem der Schienen-Version) verwenden

  • copy-paste die gesamte Ausgabe Ihres Terminals, wo die Fehlermeldung entsteht. Während Sie nicht, dass die Ausgabe verstehen kann, ist es sinnvoll, für jemand anderes Ihre Situation zu debuggen. Copy-Einfügen aus dem Terminal (einschließlich der Befehl, den Sie lief) verlässt Null Frage

  • bessere Informationen über Ihre Dateistruktur zur Verfügung stellen. Wieder einmal ein Terminal Copy-Paste ist perfekt. Von Ihrer Schiene Wurzel, können Sie den Befehl find lib laufen (es sei denn, Sie in diesem Fall sind auf Windows, Sie nicht finden können und es ist Zeit zu OSX oder ubuntu zu prüfen Schalten).

Hier ist ein Beispiel eines Terminals Copy-Paste, die diese alle Informationen enthält:

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$ 

... alles in einem Terminal.

+0

Hallo @ Luke, danke für das Hinzeigen, aktualisiert die Frage: D – sameera207