scope :for_user, (lambda {|user_id| a = Follow.follows(user_id); Question.where{user_id.in(a.select{followed_id})}})
给我:
`lambda': tried to create Proc object without a block (ArgumentError)
我已经阅读了几个问题而无法解决问题。我是Ruby的新手,刚刚开始使用Rails。我可能有点过头了。
答案 0 :(得分:3)
我认为你不需要围绕lambda的()。你怎么样尝试从简单的拳头建立起来,例如尝试:
scope :for_user, lambda {|user_id| Question.where(:user_id => user_id) }
只是为了看它是否破坏/工作......然后逐件添加你实际需要的功能,直到出现故障(或一切正常)
答案 1 :(得分:0)
我得到了同样的错误,对我有用的是Taryn East建议的:没有()。
scope :event, lambda {|name| active.where(:key => name)}
这就是我让我的工作方式。