【发布时间】:2023-03-12 01:29:01
【问题描述】:
这是我的问题:
我创建了一个新项目:
rails new myapp。
Rails 应用程序默认配置为使用 SQLite3 数据库。我执行
bundle exec rake db:create。它工作并创建了 SQLite3 数据库。-
我尝试创建一个新模型(或与数据库相关的任何其他内容),并得到以下错误:
/home/dinduks/.rvm/gems/ruby-1.9.3-p194/gems/bundler-1.1.3/lib/bundler/rubygems_integration.rb:147:in
block in replace_gem': Please install the postgresql adapter:gem install activerecord-postgresql-adapter `(pg 不是包的一部分。将它添加到 Gemfile。)(LoadError) -
当我添加一个控制器和一个动作,并尝试访问它时,我得到这个错误:
ActiveRecord::ConnectionNotEstablished (ActiveRecord::ConnectionNotEstablished)
完整的堆栈跟踪可以在这里找到:https://gist.github.com/2717365
WEBrick 服务器显然没有抱怨就启动了。
我重新安装了 Rails,重新安装了 Ruby,使用了另一个 Ruby 版本,重新安装了 RVM...并不断收到同样的错误。
PostgreSQL、postgres、pg 或 pql 没有nothing在我的代码中。一个字都没有。
我不想做异常提示的事情。我想了解为什么我有这个错误并修复它。
那么:为什么 Rails 要求我安装一些 Postgres 的东西,而 我不使用 Postgres?
谢谢!
【问题讨论】:
-
database.yml的内容是什么?echo $DATABASE_URL在 shell 中的输出是什么?你能启动 Rails 服务器吗? -
你能把你的 Gemfile 粘贴到这里吗?另外,您是否尝试过运行
bundle install? -
也粘贴 Gemfile.lock,以防万一那些鬼鬼祟祟的 gem 将其添加为依赖项。
-
@NARKOZ:我的本地 $DATABASE_URL 中有一些东西,但我删除了它,但仍然出现同样的错误。 -- 我用文件内容更新了我的问题。
-
@NARKOZ 感谢您指出
$DATABASE_URL。当我第一次尝试删除它时,我只是从 .bash_env (我的自定义 bash 配置文件之一)和source ~/.bash_rb(也打开了一个新终端)中删除了它。我应该覆盖它。我做到了,现在它可以工作了。
标签: ruby-on-rails ruby