Ruby on Rails新应用为何默认选择PostgreSQL而非SQLite3?

更新于
2026-10-09 19:20:43
1阅读来源:SEO资讯
  • 内容介绍
  • 文章标签
  • 相关推荐

本文共计357个文字,预计阅读时间需要2分钟。

Ruby on Rails新应用为何默认选择PostgreSQL而非SQLite3?

我在这台机器上安装了rbenv、Ruby 2.2.3和Rails 4.2.4。启动了我的Rails应用,未修改代码,仅使用rails new生成的文档。随后,我使用Rails服务器启动了服务器。当在命令行中输入http://:

我刚刚在这台机器上安装了rbenv, ruby 2.2.3和rails 4.2.4.我已经启动了我的rails应用程序而没有更改任何代码,只使用rails new的默认生成文档.然后我用rails服务器启动了服务器.

当命中http:// localhost:3000时,我收到以下错误:

“指定’postgresql’用于数据库适配器,但未加载gem.将gem’pg’添加到Gemfile中(并确保其版本达到ActiveRecord所需的最小值).”

Ruby on Rails新应用为何默认选择PostgreSQL而非SQLite3?

我从之前的Node项目中安装了postgres,但是我的database.yml仍然可以按照您对新应用程序的期望进行读取:

# SQLite version 3.x # gem install sqlite3 # # Ensure the SQLite 3 gem is defined in your Gemfile # gem 'sqlite3' # default: &default adapter: sqlite3 pool: 5 timeout: 5000 development: <<: *default database: db/development.sqlite3 # 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: <<: *default database: db/test.sqlite3 production: <<: *default database: db/production.sqlite3

我现在不想真正使用Postgres,我刚刚开始,我宁愿用SQLite3来保持简单.有谁知道可能会发生什么以及我可以做些什么来使用SQLite3来获取它以便此错误停止?

问题是,当你启动服务器时,它正在寻找可能设置为postgres的环境变量DATABASE_URL,这优先于database.yml文件.您可以删除环境变量,它应该可以工作,或者您可以将其重置为SQLite.

本文共计357个文字,预计阅读时间需要2分钟。

Ruby on Rails新应用为何默认选择PostgreSQL而非SQLite3?

我在这台机器上安装了rbenv、Ruby 2.2.3和Rails 4.2.4。启动了我的Rails应用,未修改代码,仅使用rails new生成的文档。随后,我使用Rails服务器启动了服务器。当在命令行中输入http://:

我刚刚在这台机器上安装了rbenv, ruby 2.2.3和rails 4.2.4.我已经启动了我的rails应用程序而没有更改任何代码,只使用rails new的默认生成文档.然后我用rails服务器启动了服务器.

当命中http:// localhost:3000时,我收到以下错误:

“指定’postgresql’用于数据库适配器,但未加载gem.将gem’pg’添加到Gemfile中(并确保其版本达到ActiveRecord所需的最小值).”

Ruby on Rails新应用为何默认选择PostgreSQL而非SQLite3?

我从之前的Node项目中安装了postgres,但是我的database.yml仍然可以按照您对新应用程序的期望进行读取:

# SQLite version 3.x # gem install sqlite3 # # Ensure the SQLite 3 gem is defined in your Gemfile # gem 'sqlite3' # default: &default adapter: sqlite3 pool: 5 timeout: 5000 development: <<: *default database: db/development.sqlite3 # 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: <<: *default database: db/test.sqlite3 production: <<: *default database: db/production.sqlite3

我现在不想真正使用Postgres,我刚刚开始,我宁愿用SQLite3来保持简单.有谁知道可能会发生什么以及我可以做些什么来使用SQLite3来获取它以便此错误停止?

问题是,当你启动服务器时,它正在寻找可能设置为postgres的环境变量DATABASE_URL,这优先于database.yml文件.您可以删除环境变量,它应该可以工作,或者您可以将其重置为SQLite.