Я использую камень Metawhere rails для запроса моей dbase. У меня есть запрос, который работает:Metawhere абстрактные условия из запроса
t=Model.where({:attr1 => 450} | {:attr2 => 450}, :lang => 2)
теперь я пытаюсь абстрагироваться условия из запроса, как это:
conditions=Hash[{:attr1 => 450} | {:attr2 => 450}, :lang => 2]
t=Model.where(conditions)
но первая строка дает мне: ошибка синтаксиса, неожиданный tASSOC, ожидая «]
Я пробовал много вещей, таких как создание условий в строке и условий (условий). но это дает мне SyntaxError: (eval): 1: in `irb_binding ': ошибка компиляции (eval): 1: синтаксическая ошибка, неожиданная', ', ожидающая $ end
Я застрял. Если вы можете мне помочь, это будет оценено по достоинству.
Рутгер
Алекс, Argh, жаль, что был я typoe в моем коде выше (я настроил его). В реальном коде эта скобка не была так благодарна за подсказку, но не для решения моей проблемы. – Rutger
Итак, у вас все еще есть ошибка 'неожиданный tASSOC, ожидающий ']' даже без этой скобки? – alexkv
Кстати, попробуйте это условие 'conditions = [{: attr1 => 450} | {: attr2 => 450},: lang => 2] ' – alexkv