リンクから特定のレビューにアクセスしようとしています:
<%= link_to "Full Review", review_path(review) %><
show.html.erb:
<%= @review.pro %>
reviews_controller.rb:
def show
@review = Review.find(params[:id])
end
ここの移行ファイルに示されているように、pro という名前のレビュー テーブルに列があります。
class CreateReviews < ActiveRecord::Migration
def change
create_table :reviews do |t|
t.string :pro
t.string :con
t.string :advice
t.string :date
t.string :role
t.string :company
t.timestamps
end
end
終わり
私が得るエラーは次のとおりです。
undefined method `pro' for nil:NilClass
Extracted source (around line #1):
1: <%= @review.pro %>
show メソッドに「puts @review」を含めても、Rails コンソールに何も返されません。これを修正する方法について何かアドバイスはありますか?
show メソッドに Review.find(1) を手動で含めたときに更新します。
ReviewsController#show による処理 HTML パラメータ: {"id"=>"1"} レイアウト/アプリケーション内で reviews/show.html.erb をレンダリング (0.9ms) 3ms で 500 内部サーバー エラーを完了
ActionView::Template::Error (未定義のメソッドpro' for nil:NilClass):
1: <%= @review.pro %>
app/views/reviews/show.html.erb:1:in
_app_views_reviews_show_html_erb___648582160945665650_70143359368840'