我使用此代码段从app / views / posts / _post.html.erb调用方法:
<% if post.user_id != current_user.id %>
| <%= vote(post, "up") %>
<%= vote(post, "down") %>
<% end %>
在app / helpers / posts_helper.rb中调用此方法:
def vote(post, direction)
link_to icon("thumbs-#{direction}"), vote_post_path(post, type: "#{direction}"), :remote => true, style: "color: #{class_for_voted(direction)}"
end
我得到一个“错误的参数数量(1对2)”错误。我不明白为什么错误出现,因为我发送两个参数并在方法中获得两个参数。
知道可能出错的是什么?如果您需要任何其他信息,请告诉我。
非常感谢任何帮助!
答案 0 :(得分:1)
你还没有展示你的堆栈跟踪(但是?),但是我想知道错误实际上是不是vote()
,而是关于它内部的一行。
icon()
应该采取多少个参数? class_for_voted()
?