![]() |
1
1
从Django1.7开始,有一个简单的方法来实现它。您的示例实际上与 the documentation :
注册时,您可以使用
|
![]() |
2
12
更灵活的方法是编写自定义查询集和自定义管理器。根据Ozan的代码:
这允许您链接自定义查询。所以这两个查询都是有效的:
|
![]() |
3
6
最好的做法是创建一个管理器方法,而不是创建一个字段查找,它看起来有点像这样:
使用方法如下:
|
![]() |
4
6
首先,我要说的是,没有任何Django机器可以公开地为你想要的东西提供便利。 (编辑-实际上自Django 1.7以来,有: https://docs.djangoproject.com/en/1.7/howto/custom-lookups/ )
也就是说,如果你
真正地
想要完成这个,子类
尝试类似这样的(粗略的)东西,根据扎克的答案改编。我将字段查找解析的实际错误处理留给读者作为练习:)
最后一句话——很明显,如果你想链接自定义的字段查找,这将变得相当棘手。另外,我通常会写得更实用一些,并使用itertools来提高性能,但我认为更清楚的是不要写了。玩得高兴! |