2024-04-29 03:00:37 发布
网友
我在一个turbogears控制器中动态地添加和子句,在我得到一个日期列之前一切都很好,因为我在turbogears中得到了一个“ProgrammingError”,所以它似乎无法计算表达式。代码如下:
terms = ["create_time<=DateTime('2012-01-01')"] records = DBSession.query(myrecords).filter(and_(*terms))
如果我这样做,它会起作用:
我忽略了什么?在
谢谢
您需要在中发送表达式构造,只需丢失引号:
terms = [create_time<=DateTime('2012-01-01')] records = DBSession.query(myrecords).filter(and_(*terms))
正如其他人所说,如果您实际从其他源获取字符串,则需要通过eval()运行它们。确保这些线不是来自外部世界!eval()需要非常小心地使用,以防止未经授权的代码执行。在
您需要在中发送表达式构造,只需丢失引号:
正如其他人所说,如果您实际从其他源获取字符串,则需要通过eval()运行它们。确保这些线不是来自外部世界!eval()需要非常小心地使用,以防止未经授权的代码执行。在
相关问题 更多 >
编程相关推荐