zoukankan      html  css  js  c++  java
  • Django基础,Day8

    自定义admin表单

    展示效果一:

    1 from django.contrib import admin
    2 from polls.models import Question
    3 
    4 class QuestionAdmin(admin.ModelAdmin):
    5     fields = ['pub_date', 'question_text']
    6 
    7 admin.site.register(Question, QuestionAdmin)
    polls/admin.py

    展示效果二:

     1 from django.contrib import admin
     2 from polls.models import Question
     3 
     4 class QuestionAdmin(admin.ModelAdmin):
     5     fieldsets = [
     6         (None,               {'fields': ['question_text']}),
     7         ('Date information', {'fields': ['pub_date']}),
     8     ]
     9 
    10 admin.site.register(Question, QuestionAdmin)
    polls/admin.py

     添加关联对象

    一个Question有多个Choice,Choice的显示方式有两种:

    其一,直接注册 admin.site.register(Choice),则Choice添加界面显示如:

    其二,在Question中关联Choice,效果展示如:

     1 from django.contrib import admin
     2 from polls.models import Question, Choice
     3 
     4 
     5 class ChoiceInline(admin.TabularInline): # admin.TabularInline admin.StackedInline
     6     model = Choice
     7     extra = 0
     8 
     9 
    10 class QuestionAdmin(admin.ModelAdmin):
    11     fieldsets = [
    12         (None,               {'fields': ['question_text']}),
    13         ('Date information', {'fields': ['pub_date'], 'classes': ['collapse']}),
    14     ]
    15     inlines = [ChoiceInline]
    16 
    17 admin.site.register(Question, QuestionAdmin)
    polls/admin.py

     自定义admin列表

    增加显示列    list_display = ('question_text', 'pub_date', 'was_published_recently')

    增加过滤器    list_filter = ['pub_date']

    添加搜索栏    search_fields = ['question_text']

     1 from django.contrib import admin
     2 from polls.models import Question, Choice
     3 
     4 
     5 class ChoiceInline(admin.TabularInline): # admin.TabularInline admin.StackedInline
     6     model = Choice
     7     extra = 0
     8 
     9 
    10 class QuestionAdmin(admin.ModelAdmin):
    11     fieldsets = [
    12         (None,               {'fields': ['question_text']}),
    13         ('Date information', {'fields': ['pub_date'], 'classes': ['collapse']}),
    14     ]
    15     inlines = [ChoiceInline]
    16     list_display = ('question_text', 'pub_date', 'was_published_recently')
    17     list_filter = ['pub_date']
    18     search_fields = ['question_text']
    19 admin.site.register(Question, QuestionAdmin)
    polls/admin.py

    ***微信扫一扫,关注“python测试开发圈”,了解更多测试教程!***
  • 相关阅读:
    friend ---- public and private
    c++中const使用详解
    In c++ access control works on per-class basis not on per-object basis.
    realloc 用法
    enum don't allocate any memory
    (转)C++ STL中的vector的内存分配与释放
    计算机网络面试总结
    Redis安装与测试
    Hbase的安装与测试
    使用ActiveMQ实现简易聊天功能
  • 原文地址:https://www.cnblogs.com/guanfuchang/p/6258173.html
Copyright © 2011-2022 走看看