提取日期:django.db.utils.OperationalError:接近"None":语法错误 [英] Extract on date : django.db.utils.OperationalError: near "None": syntax error

查看:51
本文介绍了提取日期:django.db.utils.OperationalError:接近"None":语法错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我尝试格式化查询中的日期,但是尝试提取年,月...时出现错误...

I try to format the date in a query, but I got an error whentrying to extract the year, the month...

这在sqlLite和Postgres上发生.

This occurs on sqlLite and Postgres.

Django版本:1.11.4

Django version : 1.11.4

>>> users = User.objects.all()
>>> users.annotate(year=Cast(ExtractYear('date_joined'), CharField()))

return Database.Cursor.execute(self, query, params)
sqlite3.OperationalError: near "None": syntax error

推荐答案

这真的很奇怪.它甚至无法投射用户ID,例如: users.annotate(year = Cast('id',CharField()))

It's really weird. It couldn't cast even ID of users like: users.annotate(year=Cast('id', CharField()))

解决方案:

尝试使用 TextField ,例如: users.annotate(year = Cast(ExtractYear('date_joined'),TextField()))而不是 CharField

Try using TextField like: users.annotate(year=Cast(ExtractYear('date_joined'), TextField())) instead of CharField

这篇关于提取日期:django.db.utils.OperationalError:接近"None":语法错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
相关文章
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆