2017-11-16 7 views
0

私は既存のRailsアプリケーション(Githubからクローン)を実行しようとしていますが、db:migrateを実行しようとすると、次のエラー。パージ、デシベル:スキーマ:あなたは、ActiveRecord :: StatementInvalid:PG :: UndefinedTable:ERROR:relation "users"が存在しません

rake aborted! 
ActiveRecord::StatementInvalid: PG::UndefinedTable: ERROR: relation 
"users" does not exist 
LINE 8:    WHERE a.attrelid = '"users"'::regclass 
            ^
:    SELECT a.attname, format_type(a.atttypid, 
a.atttypmod), 
       pg_get_expr(d.adbin, d.adrelid), a.attnotnull, 
a.atttypid, a.atttypmod, 
       c.collname, col_description(a.attrelid, a.attnum) AS 
comment 
      FROM pg_attribute a 
      LEFT JOIN pg_attrdef d ON a.attrelid = d.adrelid AND 
a.attnum = d.adnum 
      LEFT JOIN pg_type t ON a.atttypid = t.oid 
      LEFT JOIN pg_collation c ON a.attcollation = c.oid AND 
a.attcollation <> t.typcollation 
      WHERE a.attrelid = '"users"'::regclass 
      AND a.attnum > 0 AND NOT a.attisdropped 
      ORDER BY a.attnum 
+0

あなたはより具体的にする必要があります。既存のRailsアプリケーションはどれですか? Githubのアカウントから助けを得ることができますか?彼らは、プロジェクト固有のエラーのように聞こえるので、スタックオーバーフローよりも助けになる可能性が高いです。 –

+1

エラーは、データベースが作成されたがセットアップされていないことを示すusersテーブルが存在しないことを示します。 –

+0

移行を実行する代わりに、スキーマを読み込もうとする可能性があります。 – jvillian

答えて

0

のRailsプロジェクトをクローン化し、データベースを設定:負荷、などこれは誤りである

...私はデシベルを実行すると私は同じエラーを取得します移行を実行する必要はありません。移行は増分データベースの更新を目的としており、古くなり、もう実行しない可能性が非常に高いです。 db/schema.rbファイルをデータベースに直接ロードするrake db:schema:loadを実行します。

あなたにも種を実行するショートカットをしたい場合は、データベース(db:create)を作成rake db:setupを使用することができ、スキーマ(db:schema:load)をロードし、その後、種子(db:seed)を実行します。 rake db:resetでも同じことができますが、最初にデータベースを削除します。詳細情報については

は、このトピックにRailsのガイドを参照してください。http://guides.rubyonrails.org/active_record_migrations.html#what-are-schema-files-for-questionmark

There is no need (and it is error prone) to deploy a new instance of an app by replaying the entire migration history. It is much simpler and faster to just load into the database a description of the current schema.

関連する問題