• Django admin


    Django admin使用

    官方文档: https://docs.djangoproject.com/en/dev/ref/contrib/admin/#

    一、list_display = ('title', 'pub_date', 'update_time',)

    ModelAdmin.list_display 
    class Person(models.Model):
        first_name = models.CharField(max_length=50)
        last_name = models.CharField(max_length=50)
         
        # 自定义方法
        def my_property(self):
            return self.first_name + ' ' + self.last_name
        my_property.short_description = "Full name of the person"
     
        full_name = property(my_property)

     在admin.py中,list_display 就是来配置要显示的字段的,当然也可以显示非字段内容,或者字段相关的内容

    from django.contrib import admin
    from .models import Article, Person
     
    class ArticleAdmin(admin.ModelAdmin):
        # 在django中横像显示的方法
        list_display = ('title', 'pub_date', 'update_time',)
     
     
    class PersonAdmin(admin.ModelAdmin):
        list_display = ('full_name',)
    
    # 绑定modules中的class
    admin.site.register(Article, ArticleAdmin)
    admin.site.register(Person, PersonAdmin)

    二、搜索功能:search_fields = ('title', 'content',) 这样就可以按照 标题或内容搜索了

    ModelAdmin.search_fields
    CharField(普通字段)     
        search_fields = ('title', 'content',) 
    
    ForeignKey(外键)   
        search_fields = ['user__email']

    三、筛选功能:list_filter = ('status',) 这样就可以根据文章的状态去筛选,比如找出是草稿的文章

    ModelAdmin.list_filter

     

    class PersonAdmin(admin.ModelAdmin):
        list_filter = ('is_staff', 'company')
    
    class PersonAdmin(admin.UserAdmin):
        list_filter = ('company__name',)
    
    admin.site.redigest(Person, PersonAdmin)

    四、新增或修改时的布局顺 

    ModelAdmin.fieldsets

     

    from django.contrib import admin
    
    class FlatPageAdmin(admin.ModelAdmin):
        fieldsets = (
            (None, {
                'fields': ('url', 'title', 'content', 'sites')
            }),
            ('Advanced options', {
                'classes': ('collapse',),
                'fields': ('registration_required', 'template_name'),
            }),
        )
  • 相关阅读:
    【模板】多项式开根(加强版)
    【模板】多项式幂函数 (加强版)
    Codeforces Round #628 (Div. 2) 总结
    [TJOI2017] 不勤劳的图书管理员
    [HNOI2015] 接水果
    [USACO3.4] Raucous Rockers
    [CF1268B] Domino for Young
    Linux提权小结
    weblogic漏洞练习
    SSL/TLS 安全测试
  • 原文地址:https://www.cnblogs.com/yxy-linux/p/6123254.html
Copyright © 2020-2023  润新知