レール 3.2。次のコードを使用しuser_id
てレコードに関連付けています。
# review.rb
class Review < ActiveRecord::Base
belongs_to :reviewable, :polymorphic => true, :counter_cache => true
end
# reviews_controller.rb
def create
@review = @reviewable.reviews.new(params[:review])
@review.user_id = current_user.id
if @review.save
flash[:success] = 'Thanks for adding your review.'
redirect_to @reviewable
else
flash[:error] = 'Error adding review, please try again.'
redirect_to @reviewable
end
end
current_user
これを使用する方法を見つけたいのですが、が定義されていないと言い続けていますが、current_user
オブジェクトを見つけることができました:
def create
@review = @reviewable.current_user.reviews.create(params[:review]
if @review.save
flash[:success] = 'Thanks for adding your review.'
redirect_to @reviewable
else
flash[:error] = 'Error adding review, please try again.'
redirect_to @reviewable
end
end