运行rake db:migrate:
时,我一直收到以下错误rake aborted!
syntax error on line 18, col 9: ` adapter: mysql'
Tasks: TOP => db:migrate => environment
(See full trace by running task with --trace)
这是我的database.yml文件:
# SQLite version 3.x
# gem install sqlite3-ruby (not necessary on OS X Leopard)
development:
adapter: sqlite3
database: db/development.sqlite3
pool: 5
timeout: 5000
# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
adapter: sqlite3
database: db/test.sqlite3
pool: 5
timeout: 5000
production:
adapter: mysql
database: DATABASENAME
username: USERNAME
password: PASSWORD
如果我删除了生产设置以尝试在我的开发环境中解决问题,我会收到以下错误:
rake aborted!
no such file to load -- openid/store/filesystem
Tasks: TOP => db:migrate => environment
(See full trace by running task with --trace)
我认为这是由某种宝石依赖问题引起的,所以这是我的Gemfile:
source 'http://rubygems.org'
gem 'rails', '~> 3.1.0'
# Deploy with Capistrano
gem 'capistrano'
gem 'capistrano-ext'
gem 'devise'
gem "configatron"
gem "post_commit"
gem 'will_paginate', '> 3.0'
gem "configatron"
gem "declarative_authorization"
gem "aasm"
gem "gravatar_image_tag"
gem "polish"
gem "simple_form"
gem "i18n_generators"
gem "i18n_routing"
gem "delayed_job"
gem "oauth2"
gem "fb_graph"
gem "omniauth"
gem "paperclip", "~> 2.4"
gem "meta_search"
group :development do
# To use debugger
# gem 'ruby-debug'
# gem 'ruby-debug19' if you are using ruby 1.9.2 or higher
gem 'sqlite3-ruby', :require => "sqlite3"
gem "nifty-generators"
end
group :production do
gem 'pg'
gem 'mysql'
end
group :development, :test do
gem 'sqlite3'
end
# Bundle gems for the local environment. Make sure to
# put test-only gems in this group so their generators
# and rake tasks are available in development mode:
group :test do
gem 'webrat'
gem 'rspec'
gem 'rspec-rails'
end
gem "mocha", :group => :test
我无法理解为什么A)它不接受生产信息和B)为什么我一直得到没有这样的文件加载错误。
感谢任何帮助。
答案 0 :(得分:1)
您的标签不同。
尝试以下方法:
# SQLite version 3.x
# gem install sqlite3-ruby (not necessary on OS X Leopard)
development:
adapter: sqlite3
database: db/development.sqlite3
pool: 5
timeout: 5000
# Warning: The database defined as "test" will be erased and
# re-generated from your development database when you run "rake".
# Do not set this db to the same as development or production.
test:
adapter: sqlite3
database: db/test.sqlite3
pool: 5
timeout: 5000
production:
adapter: mysql
database: DATABASENAME
username: USERNAME
password: PASSWORD