0

Metawhere rails gem を使用してデータベースにクエリを実行しています。機能するクエリがあります:

t=Model.where({:attr1 => 450} | {:attr2 => 450}, :lang => 2)

今、次のようにクエリから条件を抽象化しようとしています:

conditions=Hash[{:attr1 => 450} | {:attr2 => 450}, :lang => 2]
t=Model.where(conditions)

しかし、最初の行は私に与えます:構文エラー、予期しないtASSOC、期待 ']

条件を文字列にして、クエリで eval(conditions) にするなど、多くのことを試しました。SyntaxError: (eval):1:in `irb_binding': compile error (eval):1: syntax error, unexpected ',', expected $end

私は立ち往生しています。あなたが私を助けることができれば、それはありがたいです.

ラトガー

4

1 に答える 1

2

交換

conditions=Hash[{:attr1 => 450} | {:attr2 => 450}, :lang => 2}]

conditions=Hash[{:attr1 => 450} | {:attr2 => 450}, :lang => 2]
于 2012-05-29T20:01:50.097 に答える