对带有单个下划线的字段名称使用过滤器

时间:2013-06-24 05:38:48

标签: django django-views django-models django-filter

我有一个名为end_date的字段,当我尝试在我的视图中使用过滤器时:

c = Coursera.objects.filter(end_date__lt = datetime.date.today()).order_by('-date')[:1].get()

我收到以下错误:

  

无法将关键字'date'解析为字段。选择是:...

end_被完全忽略了;因此,我认为end可能是一个关键词;显然,我可以将字段名称更改为其他名称;但是,我的问题是:还有另一种方法仍然使用该字段名称并能够使用过滤器吗?

P.S。我认为ltgt等关键字仅在两个下划线之后使用!

2 个答案:

答案 0 :(得分:5)

我认为end_不是关键字,错误可能是因为order_by('-date')。您的模型中似乎没有字段date,但您尝试按日期字段获取结果顺序。

答案 1 :(得分:0)

import re
if not re.match(r'^[_]+$', username):
    raise forms.ValidationError("Sorry , you can only have  _  in username")