質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.48%
Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

Q&A

解決済

2回答

2785閲覧

rails db:migrateをすると PG::DuplicateColumn: ERRORがでて解決できません(><)

TOKUSABU

総合スコア87

Ruby on Rails 5

Ruby on Rails 5は、オープンソースのWebアプリケーションフレームワークです。「同じことを繰り返さない」というRailsの基本理念のもと、他のフレームワークより少ないコードで簡単に開発できるよう設計されています。

Ruby

Rubyはプログラミング言語のひとつで、オープンソース、オブジェクト指向のプログラミング開発に対応しています。

0グッド

1クリップ

投稿2019/03/01 10:16

現在、Git Cloneをしてデータをrails db:migrateをしています
その中下記エラーがでました。

PG::DuplicateColumn: ERROR: column "confirmation_token" of relation "users" already exists : ALTER TABLE "users" ADD "confirmation_token" character varying

すでにカラムがあるとの事なにかしら削除して対応したいと思うのですが
その方法がわからず困っています

こちらのキーワードを元に検索をしてみるとテーブルで
https://bokunonikki.net/post/2017/0726_rails_postgresql_duplicate/
みたいなのはありますが、援用しつつ対応しましたがうまくいきませんでした

たぶんカラムを削除して再度rails db:migrateをすればうまくいくような
気がしますが、そのカラム削除の方法がわかりません

有識者の方、なにとぞご意見をいただく事は可能でしょうか?

rake aborted! StandardError: An error has occurred, this and all later migrations canceled: PG::DuplicateColumn: ERROR: column "confirmation_token" of relation "users" already exists : ALTER TABLE "users" ADD "confirmation_token" character varying Caused by: ActiveRecord::StatementInvalid: PG::DuplicateColumn: ERROR: column "confirmation_token" of relation "users" already exists : ALTER TABLE "users" ADD "confirmation_token" character varying

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

回答2

0

自己解決

わからないため、様子見という事で終わらせていただきます

投稿2019/04/09 00:38

TOKUSABU

総合スコア87

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

rake db:migrate:resetで一度テーブルをドロップしてはいかがでしょうか。

投稿2019/03/01 11:03

kazto

総合スコア7196

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

TOKUSABU

2019/03/01 11:32

ご指摘大変ありがとうございます! 試してみたところ下記エラーがでました リセットができない様子でした・・・ PG::DuplicateColumn: ERROR: column "confirmation_token" of relation "users" already exists : ALTER TABLE "users" ADD "confirmation_token" character varying Caused by: ActiveRecord::StatementInvalid: PG::DuplicateColumn: ERROR: column "confirmation_token" of relation "users" already exists : ALTER TABLE "users" ADD "confirmation_token" character varying Caused by: ActiveRecord::StatementInvalid: PG::DuplicateColumn: ERROR: column "confirmation_token" of relation "users" already exists : ALTER TABLE "users" ADD "confirmation_token" character varying もう少し原因確認を試してみたいと思います! 何かしらUserがすでに存在しているというのがすごく気になっています・・・
kazto

2019/03/01 11:45

resetした際のログが上記ですか? マイグレーションファイルを追記していただくことは可能でしょうか。
TOKUSABU

2019/03/03 16:40

ご返信大変遅くなりすみません(><) お心づかい大変ありがとうございます! マイグレーションファイルは下記でよろしいのでしょうか? お手数おかけしますがもしわかりましたらよろしく願いいたします (もしかしたら厳しい場合もあるかもしれないのでその場合は無理なさらずに・・・) class AddConfirmableToDevise < ActiveRecord::Migration[5.2] def up add_column :users, :confirmation_token, :string add_column :users, :confirmed_at, :datetime add_column :users, :confirmation_sent_at, :datetime add_column :users, :unconfirmed_email, :string add_index :users, :confirmation_token, unique: true # User.reset_column_information # Need for some types of updates, but not for update_all. execute("UPDATE users SET confirmed_at = NOW()") end def down remove_columns :users, :confirmation_token, :confirmed_at, :confirmation_sent_at remove_columns :users, :unconfirmed_email # Only if using reconfirmable end end
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.48%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問