0

これが私のコントローラーの外観です

class RestaurantsController < ApplicationController

    def index
        @restaurant = Restaurant.find(1)
    end 

    def new 
    end 
end

これが私の見解です

Friendliness: <%= rating_for @restaurant, "friendliness" %>
Taste : <%= rating_for @restaurant, "taste" %>
Price : <%= rating_for @restaurant, "price" %>

複数のレストランを作成するためにレールコンソールに行きました。

問題は、コントローラーのインデックスメソッドをこれに変更したときです

def index
  @restaurants = Restaurant.all
end 

ビューの を変更し@restaurant to @restaurantsました。

<%= rating_for %>yelp と同じように、星評価システムを作成できるようにする gem のヘルパー メソッドです。

問題はこれが機能しないことですか?私は取得し続けます

 (undefined method `average' for nil:NilClass):

つまり、「@restaurants」は初期化されていませんが、初期化する必要があります。letsrate gem を使用すると、モデルに評価機能を追加できます。

4

0 に答える 0