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

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

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

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

Q&A

解決済

2回答

554閲覧

rails db:migrate できない

sk2938

総合スコア21

Ruby on Rails 5

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

0グッド

0クリップ

投稿2018/07/03 15:25

編集2018/07/04 21:21

rails db:migrateをしたところ、エラーが出てしまいました。
どうすればいいでしょうか?
押してください。

== 20180629092541 AddActivationToUsers: migrating =============================
-- add_column(:users, :activation_digest, :string)
rails aborted!
StandardError: An error has occurred, this and all later migrations canceled:

SQLite3::SQLException: duplicate column name: activation_digest: ALTER TABLE "users" ADD "activation_digest" varchar
C:/Users/sk/programming/sample_app/db/migrate/20180629092541_add_activation_to_users.rb:3:in change' bin/rails:4:in require'
bin/rails:4:in `<main>'

Caused by:
ActiveRecord::StatementInvalid: SQLite3::SQLException: duplicate column name: activation_digest: ALTER TABLE "users" ADD "activation_digest" varchar
C:/Users/sk/programming/sample_app/db/migrate/20180629092541_add_activation_to_users.rb:3:in change' bin/rails:4:in require'
bin/rails:4:in `<main>'

Caused by:
SQLite3::SQLException: duplicate column name: activation_digest
C:/Users/sk/programming/sample_app/db/migrate/20180629092541_add_activation_to_users.rb:3:in change' bin/rails:4:in require'
bin/rails:4:in `<main>'
Tasks: TOP => db:migrate
(See full trace by running task with --trace)

C:/Users/sk/programming/sample_app/db/migrate/20180629092541_add_activation_to_users.rb のコード

class AddActivationToUsers < ActiveRecord::Migration[5.1]
def change
add_column :users, :activation_digest, :string
add_column :users, :activated, :boolean, default: false
add_column :users, :activated_at, :datetime
end
end

データベースはsqlite3です

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

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

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

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

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

Orlofsky

2018/07/03 21:11

タグでデータベースが何かを明記した方が適切なコメントが付き易いのでは?
guest

回答2

0

ベストアンサー

SQLite3::SQLException: duplicate column name: activation_digest: ALTER TABLE "users" ADD "activation_digest" varchar

activation_digestが重複しています。すでにテーブルに存在してませんか?

投稿2018/07/04 03:22

退会済みユーザー

退会済みユーザー

総合スコア0

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

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

sk2938

2018/07/04 03:32

activation_digestが多分カラムでありました。消去する方法ってわかりますか?
退会済みユーザー

退会済みユーザー

2018/07/04 03:39

remove_column :テーブル, :カラム
guest

0

ActiveRecord::StatementInvalid: SQLite3::SQLException: duplicate column name: activation_digest: ALTER TABLE "users" ADD "activation_digest" varchar C:/Users/sk/programming/sample_app/db/migrate/20180629092541_add_activation_to_users.rb:3:in change'

とあります。user の activation_digest 設定をみなおしてみるとよいと思います。

投稿2018/07/03 22:13

katoy

総合スコア22324

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.48%

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

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

質問する

関連した質問