将字符串转换为XXX

时间:2016-07-14 09:59:03

标签: ruby-on-rails ruby

queel,我可以这样做:

User.where{id.eq "2" | admin.eq true}

来查询。我想知道我是否可以转换[sic]一个字符串,这是一个类似的条件:

string = "id: 2"

string = "id.eq '2' | admin.eq true"

并运行:

User.where{string}

User.where(string)

结果不是哈希。我怎么能这样做?

2 个答案:

答案 0 :(得分:2)

您需要的是hash而不是string。您可以像这样使用它,

hash = {id: 2}
User.where(hash)

如果您真的想使用string,可以这样做,

string = "id = 2"
User.where(string)

如果要执行该字符串,可以使用eval。在这种情况下,它将是这样的,

string = "{id: 2}"
User.where(eval string)

答案 1 :(得分:-1)

NB 要使用下面的变体,应该在查询“ruby eval is evil”时阅读Google输出的前五页。

BidiMap