2013-10-15 3 views
3

Я пытаюсь выполнить следующую команду:неинициализированная постоянная SampleApp (NameError)

rails generate controller StaticPages home help --no-test-framework 

И я получаю эту ошибку:

/Users/josh/Desktop/RoR/rails_app/config/initializers/secret_token.rb:27:in `<top (required)>': uninitialized constant SampleApp (NameError) 

Вот мой файл secret_token.rb

require 'securerandom' 

def secure_token 
    token_file = Rails.root.join('.secret') 
    if File.exist?(token_file) 
    # Use the existing token. 
    File.read(token_file).chomp 
    else 
    # Generate a new token and store it in token_file. 
    token = SecureRandom.hex(64) 
    File.write(token_file, token) 
    token 
    end 
end 

SampleApp::Application.config.secret_key_base = secure_token 
+0

Что в 'Rakefile '? Я хочу просто проверить, совпадает ли имя приложения. – HungryCoder

+1

Является ли ваше приложение SampleApp, или оно называется RailsApp? – trh

+0

Сравните имя вашего приложения в 'config/application.rb'. Вероятно, он отличается от 'SampleApp' – ck3g

ответ

8

Возможно, вы изменили название своего приложения Rails.

Проверить в config/application.rb, что имя вашего приложения является то же самое, что один использовать в вашем secret_token.rb файле:

SampleApp::Application.config.secret_key_base = secure_token 
^^^^^^^^^ 

Вы должны иметь следующее config/application.rb:

# ... 
module SampleApp 
    class Application < Rails::Application 
    # ... 
+0

Спасибо! Он работает сейчас! – josmek

Смежные вопросы