scope :for_user, (lambda {|user_id| a = Follow.follows(user_id); Question.where{user_id.in(a.select{followed_id})}})
дает мне:в `лямбда ': пытались создать объект Proc без блока (ArgumentError)
`lambda': tried to create Proc object without a block (ArgumentError)
Я прочитал несколько вопросов, не будучи в состоянии решить эту проблему. Я относительно новичок в Ruby и просто начал работать с Rails. Я, наверное, немного над головой.
{} используются только для блоков или хэшей ... вы использовали их для параметров для методов. –
https://github.com/ernie/squeel Показывает, к чему я стремлюсь, они используют фигурные скобки. –
то, что они используют, является «хэшем в качестве параметра», но вы заметите, что в конце концов они не связывают дополнительный материал. для этого вам обычно понадобится(). eg: Thing.do_something {: a =>: hash} vs Thing.do_something ({: a =>: hash}). Do_something_else ({: another =>: hash}) –