我正在尝试通过rails控制台创建一条新记录但是我收到以下错误:
PG::ConnectionBad: FATAL: database "my_database_development" does not exist
我最近从Sqlite3更改为PG,可以部署到Heroku。这是错误的原因吗?
非常感谢!
答案 0 :(得分:1)
这是在本地运行还是在Heroku上运行?在config/database.yml
中,您指定的本地用户需要具有CREATEDB
权限(例如,作为超级用户)。
在这种情况下,需要比SQLite更多的配置。 Google将向您展示一系列针对您的操作系统的教程。
答案 1 :(得分:0)
看起来你还没有跑
rake db:create
这将"创建" PostgreSQL服务器上的数据库。你没有与SQLite有关的一步,但Postgres需要它。正如TK-421所说,确保为您的操作系统和Postgres配置了database.yml,而不是SQLite。
这是关于该主题的(可能过时的)Railscast。
答案 2 :(得分:0)
如果您在heroku上的生产中看到此问题,请启动控制台,如下所示:
rails console production
如果您的计算机上存在开发问题,请检查config/database.yml
。它指向一个不存在的本地开发数据库。