Web2py:插入datetime的服务器概念

时间:2016-08-07 18:38:15

标签: datetime web2py

如何让web2py将DB服务器理解的当前时间插入到datetime字段中。如果我简单地使用datetime.now(),它将插入客户端时间。在mySQL中我会使用" NOW()"获取服务器时间:这是否有DAL快捷方式?

在update_or_insert()语句中使用它,如果这有任何区别。

1 个答案:

答案 0 :(得分:1)

我认为您不能直接将SQL函数传递给DAL .insert.update_or_insert方法,因为传递的任何值都将最终被引用。相反,您必须使用.executesql()方法并将其传递给要执行的SQL。如果您需要生成SQL的帮助,可以使用._insert方法生成字符串,然后删除" NOW()"周围的引号。功能:

query = db.mytable._insert(mytime='NOW()').replace("'NOW()'", "NOW()")
db.executesql(query)

当然,您无法使用此方法使用.update_or_insert方法,但其逻辑并不复杂,因此您可以轻松实现自己的帮助程序来处理.update_or_insert逻辑以及上述逻辑。