sqlalchemy:and_u与lis子句中日期函数的计算

2024-04-29 03:00:37 发布

您现在位置:Python中文网/ 问答频道 /正文

我在一个turbogears控制器中动态地添加和子句,在我得到一个日期列之前一切都很好,因为我在turbogears中得到了一个“ProgrammingError”,所以它似乎无法计算表达式。代码如下:

terms = ["create_time<=DateTime('2012-01-01')"]
records = DBSession.query(myrecords).filter(and_(*terms))

如果我这样做,它会起作用:

^{pr2}$

我忽略了什么?在

谢谢


Tags: 代码datetimetime表达式create动态turbogears控制器
1条回答
网友
1楼 · 发布于 2024-04-29 03:00:37

您需要在中发送表达式构造,只需丢失引号:

terms = [create_time<=DateTime('2012-01-01')]
records = DBSession.query(myrecords).filter(and_(*terms))

正如其他人所说,如果您实际从其他源获取字符串,则需要通过eval()运行它们。确保这些线不是来自外部世界!eval()需要非常小心地使用,以防止未经授权的代码执行。在

相关问题 更多 >