使用查询集通过 Admin 过滤行 - Django
我正在尝试找到一种使用查询集过滤 Django Admin 中的对象行的方法。
e.g. Person.objects.filter(Q(name='John')|Q(surname='Doe'))
我发现弄清楚很复杂。
有什么想法吗?
I'm trying to find a way to filter down rows of objects within Django Admin, using a queryset.
e.g. Person.objects.filter(Q(name='John')|Q(surname='Doe'))
I'm finding quite complicated to figure out.
Any ideas?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
您可以通过覆盖 modeladmin 实例上的 queryset() 方法来实现此目的。请参阅 http://code。 djangoproject.com/browser/django/trunk/django/contrib/admin/options.py?rev=15347#L196
这只会影响使用该 ModelAdmin 注册的模型的结果,但您可能可以将其子类为为了保持 DRY,其他 ModelAdmin 类的起点。
我并不是说这是一个好主意。
You might be able to accomplish this by overriding the queryset() method on your modeladmin instance. See http://code.djangoproject.com/browser/django/trunk/django/contrib/admin/options.py?rev=15347#L196
This would only affect results for the model registered with that ModelAdmin, but you could probably subclass it as a starting point for other ModelAdmin classes in order to stay DRY.
I'm not saying this is a good idea.