Postgres on Rails FATAL:数据库不存在

Tyl*_*ler 29 postgresql activerecord ruby-on-rails database-migration ruby-on-rails-3

我重新安装了Postgres(9.2.4),但是我无法通过Rails 3.2.11重新启动它.我做了:

brew install postgresql
initdb /usr/local/var/postgres
pg_ctl -D /usr/local/var/postgres -l /usr/local/var/postgres/server.log start
Run Code Online (Sandbox Code Playgroud)

所以现在我有

$ psql --version
psql (PostgreSQL) 9.2.4
$ which psql
/usr/local/bin/psql
Run Code Online (Sandbox Code Playgroud)

我的database.yml文件看起来像

development:
  adapter: postgresql
  encoding: unicode
  database: myapp_development
  pool: 5
  username: Tyler
  password:
  host: localhost
  port: 5432
Run Code Online (Sandbox Code Playgroud)

当我跑,rake db:create:all然后rake db:migrate我得到错误:

PG::Error: ERROR:  relation "posts" does not exist
LINE 5:              WHERE a.attrelid = '"posts"'::regclass
                                    ^
:         SELECT a.attname, format_type(a.atttypid, a.atttypmod),
                 pg_get_expr(d.adbin, d.adrelid), a.attnotnull, a.atttypid, a.atttypmod
          FROM pg_attribute a LEFT JOIN pg_attrdef d
            ON a.attrelid = d.adrelid AND a.attnum = d.adnum
         WHERE a.attrelid = '"posts"'::regclass
           AND a.attnum > 0 AND NOT a.attisdropped
         ORDER BY a.attnum
Run Code Online (Sandbox Code Playgroud)

我试图清除与过去的数据库,迁移等有关的所有内容.

我删除了schema.rb,seed.rb和迁移文件夹中的所有文件,以及我能想到的任何其他内容.但是,引用"帖子"的错误让我觉得我的先前数据库(有一个名为"帖子"的表)仍有一些旧的引用.

在尝试完全重新安装/刷新我的数据库时,是否有人知道如何解决此错误?

use*_*576 63

我遇到了类似的问题.我检查了不同的网站,并尝试了他们的建议,但没有工作.然后我尝试了你的建议. rake db:create:all并且rake db:migrate它为我工作.谢谢!

  • 在我加入捆绑执行官之前,这对我不起作用.`bundle exec rake db:create:all`.谢谢! (5认同)