当前位置 : 主页 > 编程语言 > ruby >

ruby-on-rails – Fresh rails应用程序默认为Postgres而不是SQLite3

来源:互联网 收集:自由互联 发布时间:2021-06-23
我刚刚在这台机器上安装了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所需的最小值).”

我从之前的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.
网友评论