Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/ruby-on-rails-4/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 如何使用我的rails应用程序解决此sqlite问题?_Ruby On Rails_Ruby On Rails 4_Sqlite - Fatal编程技术网

Ruby on rails 如何使用我的rails应用程序解决此sqlite问题?

Ruby on rails 如何使用我的rails应用程序解决此sqlite问题?,ruby-on-rails,ruby-on-rails-4,sqlite,Ruby On Rails,Ruby On Rails 4,Sqlite,我刚刚在heroku上部署了我的应用程序。但是,现在当我尝试切换回开发并在命令提示符下运行rails c时,出现以下错误: C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/activesupport-4.1.6/lib/active_support/dependencies.rb:247:in `require': cannot load such file -- sqlite3/database from C:/Rail

我刚刚在heroku上部署了我的应用程序。但是,现在当我尝试切换回开发并在命令提示符下运行rails c时,出现以下错误:

C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/activesupport-4.1.6/lib/active_support/dependencies.rb:247:in `require': cannot load such file -- sqlite3/database
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/activesupport-4.1.6/lib/active_support/dependencies.rb:247:in `block in require'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/activesupport-4.1.6/lib/active_support/dependencies.rb:232:in `load_dependency'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/activesupport-4.1.6/lib/active_support/dependencies.rb:247:in `require'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/sqlite3-1.3.10-x86-mingw32/lib/sqlite3.rb:9:in `<top (required)>'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/bundler-1.7.7/lib/bundler/runtime.rb:76:in `require'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/bundler-1.7.7/lib/bundler/runtime.rb:76:in `block (2 levels) in require'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/bundler-1.7.7/lib/bundler/runtime.rb:72:in `each'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/bundler-1.7.7/lib/bundler/runtime.rb:72:in `block in require'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/bundler-1.7.7/lib/bundler/runtime.rb:61:in `each'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/bundler-1.7.7/lib/bundler/runtime.rb:61:in `require'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/bundler-1.7.7/lib/bundler.rb:133:in `require'
        from D:/Railstutorials/Taxibol/Platform/iteration2/taxibol_operator/config/application.rb:9:in `<top (required)>'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-4.1.6/lib/rails/commands/commands_tasks.rb:146:in `require'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-4.1.6/lib/rails/commands/commands_tasks.rb:146:in `require_application_and_environment!'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-4.1.6/lib/rails/commands/commands_tasks.rb:68:in `console'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-4.1.6/lib/rails/commands/commands_tasks.rb:40:in `run_command!'
        from C:/RailsInstaller/Ruby1.9.3/lib/ruby/gems/1.9.1/gems/railties-4.1.6/lib/rails/commands.rb:17:in `<top (required)>'
        from bin/rails:4:in `require'
        from bin/rails:4:in `<main>'
以下是my database.yml文件:

default: &default
  adapter: sqlite3
  pool: 5
  timeout: 5000

development:
  <<: *default
  database: db/development.sqlite3

test:
  <<: *default
  database: db/test.sqlite3

production:
  adapter: postgresql  
  host: ec2-23-23-210-37.compute-1.amazonaws.com
  port: 5432
  database: d9qgibt6qabecr  
  username: ygaayqvpdrfjwa
  password: 'my_password'

当我想在开发模式下启动服务器时,我也面临同样的问题。我哪里会出错?

运行rake db:create并成功运行。虽然我不知道为什么。如果有人能解释一下……那就太好了。

我建议在本地安装Postgres,这样您的开发和生产环境就相同了

有时在进行故障排除时,在本地运行生产环境是很有帮助的,因为可能存在一些您可能没有注意到的其他设置,这些设置在生产和开发中是不同的。在本地运行生产是测试这一点的快速方法,为此,您需要在本地安装Postgres,因为这是在database.yml中设置的

以下是如何从终端本地运行生产服务器或生产控制台: RAILS\u ENV=生产RAILS服务器 或 RAILS_ENV=生产RAILS控制台


仅供参考,Mac用户安装Postgres的一个很好的方法是使用,因为使用Spotlight并在Postgres中键入内容,使用CMD+SPACE\u BAR系统搜索很容易运行。

实际的sqlite文件没有创建,因此无法连接到它。运行rakedb时:create它生成文件。