这可能真的很愚蠢,但是,我不明白为什么会发生这种情况。 我有这个方法。未定义的方法'许可'为:像:符号
def vote_params
params.fetch(:vote, :like, :hate, :movie_id, {}).permit(:like, :hate, :movie_id)
end
然后我调用这样的方法调用它(默认的脚手架创建方法)。
<td><%= link_to Vote.where(movie_id: movie.id, like: true).count, upvote_path(:like => true, :hate => false, :movie_id => movie.id) %></td>
我的路线是
get 'vote/movies' => 'votes#create', as: :upvote
我缺少什么?
我们需要看到您的控制台日志,它显示了如何为您的请求参数的部分。我现在可以告诉我的是,我发现它真的很奇怪'params.fetch(:vote,:like,:hate,:movie_id,{})'通常我们只抓取一个或两个符号,已经有4个了,完全一样 –
尝试'params.permit(:like,:hate,:movie_id)' –