zoukankan      html  css  js  c++  java
  • Django Admin Cookbook-41如何将数据库视图添加到Django Admin后台

    41.如何将数据库视图添加到Django Admin后台?

    你通过以下语句,创建了一个数据库视图:

    create view entities_entity as
        select id, name from entities_hero
        union
        select 10000+id as id, name from entities_villain
    

    它包含所有Hero和Villain对象的名称。Villain对象的的ID被设置都加上10000,因为Hero对象的数量不会超过这个数字。

    sqlite> select * from entities_entity;
    1|Krishna
    2|Vishnu
    3|Achilles
    4|Thor
    5|Zeus
    6|Athena
    7|Apollo
    10001|Ravana
    10002|Fenrir
    

    然后添加一个managed=False模型:

    class AllEntity(models.Model):
        name = models.CharField(max_length=100)
        class Meta:
            managed = False
            db_table = "entities_entity"
    

    并将其添加到Admin后台:

    @admin.register(AllEntity)
    class AllEntiryAdmin(admin.ModelAdmin):
        list_display = ("id", "name")
    

    效果如下。

    返回目录

  • 相关阅读:
    day13_迭代器,生成器
    作业礼包
    day12_装饰器进阶
    装饰器作业
    day11_装饰器
    函数作业
    day10-函数进阶
    数据类型-习题解答
    day09_函数
    PHP 完美分页
  • 原文地址:https://www.cnblogs.com/superhin/p/12192485.html
Copyright © 2011-2022 走看看