前提・実現したいこと
星の評価の実装。
質問の内容
・星の評価を作成したのですが、エラーが出て解決出来ず投稿しました。
発生している問題・エラーメッセージ
NoMethodError in Todolists#new
Showing /home/vagrant/work/gogogogogogo/app/views/todolists/new.html.erb where line #7 raised
**undefined method `rate' for #<User id: nil, created_at: nil, updated_at: nil>
Extracted source (around line #7):
5**
6
7
8
9
10
<%= f.label :rate %>
<%= f.hidden_field :rate, id: :review_star %>
<% end %>
エラーメッセージ
### 試したこと スペルミスなどをチェックしたのですが、分かりませんでした。 何度かコードを整えました。 ### newコントローラ情報 **class TodolistsController < ApplicationController def new @user = User.new end def index end end ** ### **newページ** <h1>Todolists#new</h1> <p>Find me in app/views/todolists/new.html.erb</p> <%= form_for @user, url: '/todolists_index' do |f| %> <%= f.label :rate %> <%= f.hidden_field :rate, id: :review_star %> <% end %> javascript: $('#star').raty({ size: 36, starOff: "#{asset_path('star-off.png')}", starOn: "#{asset_path('star-on.png')}", starHalf: "#{asset_path('star-half.png')}", scoreName: 'review[rate]', half: true, });** ### **Reviewモデル** class Review < ApplicationRecord validates :rate, numericality: { less_than_or_equal_to: 5, greater_than_or_equal_to: 1 }, presence: true end ### **Reviewテーブル** class AddRateToReview < ActiveRecord::Migration[5.2] def change add_column :reviews, :rate, :float, null: false, default: 0 end end よろしくお願いします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/05/20 00:43 編集
2020/05/20 00:58
2020/05/20 01:02
2020/05/20 05:37