方法定义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)定义过滤方案

    返回结果。。。。

文章结束给大家分享下程序员的一些笑话语录: 这年头的互联网真是娱乐了中国,网民们从各种各样的“门”里钻来钻去,又有好多“哥”好多“帝”,值得大家品味不已……网络经典语录,关于IT与互联网,经典与您分享!

--------------------------------- 原创文章 By
定义和代码
---------------------------------

原文地址:https://www.cnblogs.com/xinyuyuanm/p/3098103.html