Django 对带有单下划线的字段名使用筛选器
我有一个名为Django 对带有单下划线的字段名使用筛选器,django,django-views,django-models,django-filter,Django,Django Views,Django Models,Django Filter,我有一个名为end\u date的字段,当我尝试在视图中使用过滤器时: c = Coursera.objects.filter(end_date__lt = datetime.date.today()).order_by('-date')[:1].get() 我得到以下错误: 无法将关键字“日期”解析为字段。选择是: 结束被完全忽略;因此,我假设end可能是一个关键字;显然,我可以将字段名更改为其他名称;然而,我的问题是:是否有其他方法仍然使用该字段名并能够使用过滤器 另外,我认为像lt或gt
end\u date
的字段,当我尝试在视图中使用过滤器时:
c = Coursera.objects.filter(end_date__lt = datetime.date.today()).order_by('-date')[:1].get()
我得到以下错误:
无法将关键字“日期”解析为字段。选择是:
结束
被完全忽略;因此,我假设end
可能是一个关键字;显然,我可以将字段名更改为其他名称;然而,我的问题是:是否有其他方法仍然使用该字段名并能够使用过滤器
另外,我认为像
lt
或gt
这样的关键词只能在两个下划线后使用 我不认为end\u
是一个关键词,错误可能是因为order\u by('-date')
。您的模型中似乎没有字段date
,但您正在尝试按日期获取结果订单字段
import re
if not re.match(r'^[_]+$', username):
raise forms.ValidationError("Sorry , you can only have _ in username")