私の Rails アプリでは、自分のサウンドを評価するための評価を作成します。評価では、ユーザーは、この評価を付けた理由などの情報を追加できます。
私の評価はうまくいきますが、情報の編集入力に best_in_place を追加したいと思います。
だから私の見解では #サウンドショー
<%= best_in_place @rating, :info, :type => :textarea, :nil => "Ajouter un commmentaire à votre vote !" %>
そして私のコントローラーで:評価:
def create
@sound = Sound.find_by_id(params[:sound_id])
@rating = Rating.new(params[:rating])
@rating.sound_id = @sound.id
@rating.user_id = current_user.id
if @rating.save
respond_to do |format|
format.html
format.js
end
end
end
def update
@sound = Sound.find_by_id(params[:sound_id])
@rating = current_user.ratings.find_by_sound_id(@sound.id)
@rating.sound_id = @sound.id
if @rating.update_attributes(params[:rating])
respond_to do |format|
format.html
format.js
end
end
end
しかし、「info」を best_in_place で編集したい場合、次の間違いがあります。
nil の id と呼ばれますが、これは誤って 4 になります -- 本当に nil の id が必要な場合は、object_id を使用してください
レーンは次のとおりです。
@rating = current_user.ratings.find_by_sound_id(@sound.id)
私の問題を理解していただき、in_place_editing の作業を手伝っていただければ幸いです。
ありがとうございました