0

私はこのコントローラーを使用してajaxリクエストに応答しています。これは、ユーザーがログインしていない場合、つまりuser_id = nilの場合、投票を保存して「err」パーシャルを返さないようにすることです。 。しかし、ajaxは500エラーを返し、それを理解することはできません。user_idを使用したcreateメソッドは正しく機能します

def create
  unless params[:user_id].nil?
    @vote = Vote.new(:song_id => params[:song_id], :user_id => params[:user_id])
    @vote.save
    @song = Song.where(:id => params[:song_id])
    render :partial => "votes/ret", :locals => { :song => @song }, :layout => false, :status => :created
  else 
    render :partial => "votes/err", :layout => false
  end
end
4

1 に答える 1

0

モデルに関連付けがありますか? これをはるかに簡単に解決できます。

関連付けについて教えて、エラーのコンソール出力を投稿できる場合に最適です。

そして、あなたは変えることができました

unless params[:user_id].nil?

に:

if params[:user_id]

これは同じことをしており、読みやすくなっています。

ベスト

于 2012-09-12T06:08:16.577 に答える