Django filter_horizo ntal过滤

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django filter_horizo ntal过滤相关的知识,希望对你有一定的参考价值。

我有2个与M2M类型关系相关的模型。我在管理员中使用filter_horizontal来编辑我的实体。

但是,我希望能够控制filter_horizontal小部件左侧的内容。例如,我想过滤并仅显示符合某些条件的实体。

答案

我想我找到了!

class MyModelAdmin(admin.ModelAdmin):
def formfield_for_manytomany(self, db_field, request, **kwargs):
    if db_field.name == "cars":
        kwargs["queryset"] = Car.objects.filter(owner=request.user)
    return super(MyModelAdmin, self).formfield_for_manytomany(db_field, request, **kwargs)

ModelAdmin.formfield_for_manytomany(db_field, request, **kwargs)

另一答案

这个主题在Django管理员中总是很棘手。我想在内联防御中你可以这样做:

class BAdmin(admin.TabularInline):...

def get_queryset(self, request):
    qs = super(BAdmin, self).get_queryset(request)
    return qs.filter(user=request.user)

https://docs.djangoproject.com/en/stable/ref/contrib/admin/#django.contrib.admin.ModelAdmin.get_queryset

以上是关于Django filter_horizo ntal过滤的主要内容,如果未能解决你的问题,请参考以下文章

form-horizo​​ntal 不适用于 django-crispy-forms 和 django-registration-redux

Django 管理界面:使用带中间表的 ManyToMany 字段的 Horizo​​ntal_filter

ProgressBar 和 progressBarStyleHorizo​​ntal 填充[重复]

iOS:用 UIModalTransitionStyleFlipHorizo​​ntal 替换模态 ViewController

React Native中带有粘性标题的Sectionlist Horizo​​ntal?

HTML jQuery Horizo​​ntal Accordion