django admin中 外键下拉框添加过滤(只需要显示我所要的过滤结果)


先上代码,在讲解

 

class BlogArticleAdmin(admin.ModelAdmin):

    def formfield_for_foreignkey(self, db_field, request, **kwargs):
        if db_field.name == "sort_id":
            kwargs["queryset"] = Tags.objects.filter(user=request.user)
        return super(BlogArticleAdmin, self).formfield_for_foreignkey(db_field, request, **kwargs)

 

formfield_for_foreignkey该方法和其他方法(delete model ,save_model()方法一样,都会django 内置的

 

db_field.name == "sort_id":设置数据字段,也就是外键

kwargs["queryset"] = Tags.objects.filter(user=request.user)定义过滤方案

返回结果。。。。

 

 

 

相关内容

    暂无相关文章

评论关闭