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

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

ただいまの
回答率

87.49%

NoMethodError in Devise::Registrations#new のエラー

受付中

回答 0

投稿

  • 評価
  • クリップ 1
  • VIEW 2,416

score 15

何回試してもこのようなエラーが出てしまいます。
初めたばかりで失礼がありましたら申し訳あません。

Showing /home/ec2-user/environment/Bookers/app/views/devise/registrations/new.html.erb where line #7 raised:

undefined method `name' for #<Rio id: nil, email: "", created_at: nil, updated_at: nil>

 ``` <div class="field">

       <%= f.label :name %><br />   

       <%= f.text_field :name, autofocus: true, autocomplete: "name" %>

</div>  

ちなみに、マイグレーションファイルはこちらになります
t.string :nameを追加した後、
$rails db:migrateはしました。

class DeviseCreateRios < ActiveRecord::Migration[5.2]   def change     create_table :rios do |t|

      ## Database authenticatable       #メールアドレス

      t.string :email,              null: false, default: ""       #暗号化されたパスワード

      t.string :encrypted_password, null: false, default: ""

      ## Recoverable

      t.string   :reset_password_token

      t.datetime :reset_password_sent_at

      ## Rememberable

      t.datetime :remember_created_at

      ## Trackable

      t.integer  :sign_in_count, default: 0, null: false

      t.datetime :current_sign_in_at

      t.datetime :last_sign_in_at

      t.string   :current_sign_in_ip

      t.string   :last_sign_in_ip

      ## Confirmable

      # t.string   :confirmation_token

      # t.datetime :confirmed_at

      # t.datetime :confirmation_sent_at

      # t.string   :unconfirmed_email # Only if using reconfirmable

      ## Lockable

      # t.integer  :failed_attempts, default: 0, null: false # Only if lock strategy is :failed_attempts

      # t.string   :unlock_token # Only if unlock strategy is :email or :both

      # t.datetime :locked_at

      t.string :name

      t.timestamps null: false

    end

    add_index :rios, :email,                unique: true

    add_index :rios, :reset_password_token, unique: true

    # add_index :rios, :confirmation_token,   unique: true

    # add_index :rios, :unlock_token,         unique: true

  end end ```

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

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

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

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 過去に投稿した質問と同じ内容の質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正の依頼

  • 退会済みユーザー

    退会済みユーザー

    2019/03/01 09:37

    schema.rbのcreate_tableを見せていただけますか?

    キャンセル

  • sairito0628

    2019/03/01 17:57

    こちらになります。。。
    ActiveRecord::Schema.define(version: 2019_02_28_191757) do

    create_table "rios", force: :cascade do |t|
    t.string "email", default: "", null: false
    t.string "encrypted_password", default: "", null: false
    t.string "reset_password_token"
    t.datetime "reset_password_sent_at"
    t.datetime "remember_created_at"
    t.integer "sign_in_count", default: 0, null: false
    t.datetime "current_sign_in_at"
    t.datetime "last_sign_in_at"
    t.string "current_sign_in_ip"
    t.string "last_sign_in_ip"
    t.datetime "created_at", null: false
    t.datetime "updated_at", null: false
    t.index ["email"], name: "index_rios_on_email", unique: true
    t.index ["reset_password_token"], name: "index_rios_on_reset_password_token", unique: true
    end

    end

    キャンセル

まだ回答がついていません

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

  • ただいまの回答率 87.49%
  • 質問をまとめることで、思考を整理して素早く解決
  • テンプレート機能で、簡単に質問をまとめられる

関連した質問

同じタグがついた質問を見る