使用eval以编程方式定义SQLQuery q对象

时间:2011-03-10 12:52:46

标签: eval python sqlobject

我正在使用SQLObject并希望以编程方式使用.q对象(或其他方式)构建查询 - 但不想恢复为实际的SQL。

我正在尝试做类似的事情:

column = 'name'
value = 'todd'
Users.select(Users.q.column==value)

我有这个:

Users.select(eval('Users.q.%s' % column)==value)

但它只是觉得“错误” - 这是“正确的”(或更恰当的,“pythonic”)方式吗?

1 个答案:

答案 0 :(得分:2)

Users.select(getattr(Users.q, column)==value)