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

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

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

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

Q&A

解決済

1回答

905閲覧

rakeでdb:createを実行するとエラーが出てしまう

wdpecker

総合スコア7

Ruby on Rails 4

Ruby on Rails4はRubyによって書かれたオープンソースのウェブフレームワークです。 Ruby on Railsは「設定より規約」の原則に従っており、効率的に作業を行うために再開発を行う必要をなくしてくれます。

0グッド

0クリップ

投稿2017/08/20 22:03

編集2017/08/21 14:27

###前提・実現したいこと
rakeでDB createやmigrateをすると以下のエラーメッセージが出てきます。
どのようにすれば、クリアできるのでしょうか。

###発生している問題・エラーメッセージ

<エラーメッセージ ここから>
[vagrant@vagrant-centos65 vagrant]$ bin/rake db:migrate:reset
W, [2017-08-20T21:05:34.442214 #16027] WARN -- : You are setting a key that conflict
s with a built-in method OmniAuth::AuthHash::InfoHash#name defined at /home/vagrant/.
gem/ruby/2.1.2/gems/omniauth-1.3.2/lib/omniauth/auth_hash.rb:34. This can cause unexp
ected behavior when accessing the key via as a property. You can still access the key
via the #[] method.
== 20170820174000 CreateStaffMembers: migrating ===============================
-- create_table(:staff_members)
-> 0.3842s
-- email_for_index()
rake aborted!
StandardError: An error has occurred, all later migrations canceled:```
<エラーメッセージ ここまで >

ご連絡有難うございます。
以下 追加のエラーメセージです。
<~~~~~~~~~>
StandardError: An error has occurred, all later migrations canceled:

undefined local variable or method email_for_index' for #<CreateStaffMembers:0x007f6 c004ac860> /home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb: 648:in block in method_missing'
/home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb:
621:in block in say_with_time' /home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb: 621:in say_with_time'
/home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb:
641:in method_missing' /vagrant/db/migrate/20170820174000_create_staff_members.rb:19:in change'
/home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb:
595:in exec_migration' /home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb: 579:in block (2 levels) in migrate'
/home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb:
578:in block in migrate' /home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/connection_ad apters/abstract/connection_pool.rb:294:in with_connection'
/home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb:
577:in migrate' /home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb: 752:in migrate'
/home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb:
992:in block in execute_migration_in_transaction' /home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb: 1040:in ddl_transaction'
/home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb:
991:in execute_migration_in_transaction' /home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb: 953:in block in migrate'
/home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb:
949:in each' /home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb: 949:in migrate'
/home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb:
807:in up' /home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb: 785:in migrate'
/home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/railties/data
bases.rake:34:in block (2 levels) in <top (required)>' NameError: undefined local variable or method email_for_index' for #<CreateStaffMemb ers:0x007f6c004ac860>
/home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb:
648:in block in method_missing' /home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb: 621:in block in say_with_time'
/home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb:
621:in say_with_time' /home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb: 641:in method_missing'
/vagrant/db/migrate/20170820174000_create_staff_members.rb:19:in change' /home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb: 595:in exec_migration'
/home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb:
579:in block (2 levels) in migrate' /home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb: 578:in block in migrate'
/home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/connection_ad
apters/abstract/connection_pool.rb:294:in with_connection' /home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb: 577:in migrate'
/home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb:
752:in migrate' /home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb: 992:in block in execute_migration_in_transaction'
/home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb:
1040:in ddl_transaction' /home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb: 991:in execute_migration_in_transaction'
/home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb:
953:in block in migrate' /home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb: 949:in each'
/home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb:
949:in migrate' /home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb: 807:in up'
/home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/migration.rb:
785:in migrate' /home/vagrant/.gem/ruby/2.1.2/gems/activerecord-4.1.0/lib/active_record/railties/data bases.rake:34:in block (2 levels) in <top (required)>'
Tasks: TOP => db:migrate:reset => db:migrate
(See full trace by running task with --trace)
<~~~~~~~~~~~>

以上、宜しくお願いします。 ###該当のソースコード 言語は ruby 2.1.2 rails 4.1.0です gemfileには ・ gem 'omniauth', '~> 1.3.2' gem 'omniauth-oauth2' gem 'omniauth-twitter', '~> 1.0.1' ・ でbundleしてあります。

###試したこと
createおよびmigrateを何回か実行しました。
omniauthも1.3.2ニ」アップデートしました。
状況は変わりません。

###補足情報(言語/FW/ツール等のバージョンなど)
より詳細な情報
「実践 Ruby on Rails 4」のソースコードを打ち込んで勉強中です。
DB作成で躓いています。上記エラーを消すことができません。

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

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

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

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

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

maisumakun

2017/08/21 00:17

「StandardError: An error has occurred」以降に、スタックトレース(エラーの起きたファイル名や行など)は出ていませんか?
guest

回答1

0

ベストアンサー

「undefined local variable or method email_for_index」とありますが、おそらくは:email_for_indexと書くべきところのコロンを抜かしてしまったとか、そのようなたぐいの書き間違いかと思います。

投稿2017/08/21 14:32

maisumakun

総合スコア145123

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.50%

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

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

質問する

関連した質問