他们有一个方法叫做投票?看看是否有人投票。我应该把它放在哪里,以便它可以在控制器和视图中使用?首先考虑将它放在投票记录模型中,但我不能在那里调用current_user。然后是项目助手,但它在那里也失败了?
def voted?(project)
Project.votes.exists?( :project_id => project.id, :user_id => current_user.id )
end
谢谢
你考虑过这个问题吗?
class User < ActiveRecord::Base
has_many :votes # assuming you have this association
def voted?(project)
votes.exists?(:project_id => project)
end
end
现在你可以在任何地方使用下面的代码,在控制器中(保持它们的简洁),在视图中保持整洁。
current_user.voted?(project)
应该放在User
类中。但是:您应该让它使用用户实例的user_id
,而不是current_user
将其放在模型的帮助器中。
例如。/app/帮助/yourmodel_helper.rb