Назад | Перейти на главную страницу

Проблемы с установкой Redmine на CentOS 6.2 - неопределенный метод db для main: object

Я пытаюсь установить RedMine на CentOS 6.2, но у меня возникают трудности, когда я пытаюсь получить доступ к сайту. Используя это руководство, Я настроил в environment.rb:

# Load the rails application
require File.expand_path('../application', __FILE__)

# Make sure there's no plugin in vendor/plugin before starting
vendor_plugins_dir = File.join(Rails.root, "vendor", "plugins")
if Dir.glob(File.join(vendor_plugins_dir, "*")).any?
  $stderr.puts "Plugins in vendor/plugins (#{vendor_plugins_dir}) are no longer allowed. " +
    "Please, put your Redmine plugins in the `plugins` directory at the root of your " +
    "Redmine directory (#{File.join(Rails.root, "plugins")})"
  exit 1
end

ENV['RAILS_ENV'] ||= 'production'

#RAILS_ENV=production bundle exec rake generate_session_store
RAILS_ENV=production bundle exec rake db:migrate

# Initialize the rails application
RedmineApp::Application.initialize!

К сожалению, я постоянно сталкиваюсь со следующей ошибкой:

undefined method 'db' for main:Object

У меня такая же проблема, когда я пытаюсь запустить команду вручную:

[root@nag0 config]# rake db:migrate --trace
(in /var/www/html/redmine-2.2.2)
** Invoke db:migrate (first_time)
** Invoke environment (first_time)
** Execute environment
rake aborted!
undefined method `db' for main:Object
/var/www/html/redmine-2.2.2/config/environment.rb:16
/usr/lib64/ruby/gems/1.8/gems/railties-3.2.11/lib/rails/application.rb:103:in `require'
/usr/lib64/ruby/gems/1.8/gems/railties-3.2.11/lib/rails/application.rb:103:in `require_environment!'
/usr/lib64/ruby/gems/1.8/gems/railties-3.2.11/lib/rails/application.rb:297:in `initialize_tasks'
/usr/lib64/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/task.rb:228:in `call'
/usr/lib64/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/task.rb:228:in `execute'
/usr/lib64/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/task.rb:223:in `each'
/usr/lib64/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/task.rb:223:in `execute'
/usr/lib64/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/task.rb:166:in `invoke_with_call_chain'
/usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
/usr/lib64/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/task.rb:159:in `invoke_with_call_chain'
/usr/lib64/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/task.rb:187:in `invoke_prerequisites'
/usr/lib64/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/task.rb:185:in `each'
/usr/lib64/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/task.rb:185:in `invoke_prerequisites'
/usr/lib64/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/task.rb:165:in `invoke_with_call_chain'
/usr/lib/ruby/1.8/monitor.rb:242:in `synchronize'
/usr/lib64/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/task.rb:159:in `invoke_with_call_chain'
/usr/lib64/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/task.rb:152:in `invoke'
/usr/lib64/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/application.rb:143:in `invoke_task'
/usr/lib64/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/application.rb:101:in `top_level'
/usr/lib64/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/application.rb:101:in `each'
/usr/lib64/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/application.rb:101:in `top_level'
/usr/lib64/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/application.rb:110:in `run_with_threads'
/usr/lib64/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/application.rb:95:in `top_level'
/usr/lib64/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/application.rb:73:in `run'
/usr/lib64/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/application.rb:160:in `standard_exception_handling'
/usr/lib64/ruby/gems/1.8/gems/rake-10.0.3/lib/rake/application.rb:70:in `run'
/usr/lib64/ruby/gems/1.8/gems/rake-10.0.3/bin/rake:33
/usr/bin/rake:19:in `load'
/usr/bin/rake:19
Tasks: TOP => db:migrate => environment

Я настроил database.yml файл с моим логином и паролем к базе данных MySQL.

Учитывая, что я новичок в Ruby в целом, я уверен, что делаю что-то не так, но, к сожалению, я недостаточно знаю о том, как работает Ruby, для дальнейшего устранения неполадок.

Любые предложения всегда приветствуются.

Можете ли вы подтвердить, что вы настроили config/database.yml скорее, чем config/db.yml? Если нет, значит, вы неправильно назвали файл конфигурации базы данных.

Вы также неправильно прочитали руководство. Под разделом Создать хранилище сеансов, перечислены команды для выполнения, а не дополнения к environment.rb.

Удалите линии

#RAILS_ENV=production bundle exec rake generate_session_store
RAILS_ENV=production bundle exec rake db:migrate

от твоего environment.rb и продолжайте работу с руководством, выполняя команды в Создать хранилище сеансов вместо этого в командной строке.