py_Django的管理界面常见组件-创新互联

自定义列表

10年积累的网站设计制作、成都网站制作经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站设计后付款的网站建设流程,更有五华免费网站建设让你可以放心的选择与我们合作。

对象显示

class Author(models.Model):
    first_name = models.CharField(max_length=30)
    last_name = models.CharField(max_length=40)
    email = models.EmailField(blank=True, verbose_name='e-mail')    
    def __unicode__(self):                           # 显示的方式
        return u'%s %s' % (self.first_name, self.last_name)

py_Django的管理界面常见组件

作者列表

from django.contrib import admin
from mysite.books.models import Publisher, Author, Book
class AuthorAdmin(admin.ModelAdmin):               # 用AuthorAdmin选项注册Author模块
    list_display = ('first_name', 'last_name', 'email') ############################
admin.site.register(Publisher)
admin.site.register(Author, AuthorAdmin)   # admin.site.register()函数接受一个ModelAdmin子类作为第二个参数。
admin.site.register(Book)

py_Django的管理界面常见组件

添加一个快速查询栏

class AuthorAdmin(admin.ModelAdmin):
    list_display = ('first_name', 'last_name', 'email')    
    search_fields = ('first_name', 'last_name')    # 过滤的依据 #############

py_Django的管理界面常见组件

为Book列表页添加一些过滤器

from django.contrib import admin
from mysite.books.models import Publisher, Author, Book

class AuthorAdmin(admin.ModelAdmin):
    list_display = ('first_name', 'last_name', 'email')
    search_fields = ('first_name', 'last_name')
class BookAdmin(admin.ModelAdmin):
    list_display = ('title', 'publisher', 'publication_date')
    list_filter = ('publication_date',)          #########################
admin.site.register(Publisher)
admin.site.register(Author, AuthorAdmin)
admin.site.register(Book, BookAdmin)

py_Django的管理界面常见组件

py_Django的管理界面常见组件

一种过滤日期的方式是使用date_hierarchy选项

class BookAdmin(admin.ModelAdmin):
    list_display = ('title', 'publisher', 'publication_date')
    list_filter = ('publication_date',)    
    date_hierarchy = 'publication_date'  # 请注意,date_hierarchy接受的是* 字符串* ,而不是元组。

py_Django的管理界面常见组件

改变默认的排序方式

class BookAdmin(admin.ModelAdmin):
    list_display = ('title', 'publisher', 'publication_date')
    list_filter = ('publication_date',)
    date_hierarchy = 'publication_date'    
    ordering = ('-publication_date',)    # 按publication date降序排列    小箭头显示排序

py_Django的管理界面常见组件

自定义编辑表单

class BookAdmin(admin.ModelAdmin):
    list_display = ('title', 'publisher', 'publication_date')
    list_filter = ('publication_date',)
    date_hierarchy = 'publication_date'
    ordering = ('-publication_date',)    
    fields = ('title', 'authors', 'publisher', 'publication_date')  
    #  fields 内表示可编辑的  我们可以隐藏publication_date,以防止它被编辑。如:
    fields = ('title', 'authors', 'publisher')  # 这里的顺序会影响显示的顺序

py_Django的管理界面常见组件

filter_horizontal

class BookAdmin(admin.ModelAdmin):
    list_display = ('title', 'publisher', 'publication_date')
    list_filter = ('publisher',)
    date_hierarchy = 'publication_date'
    ordering = ('-publication_date',)
    fields = ('authors', 'title', 'publisher', 'publication_date')   ## 这个是顺序,翻译说要移除,原文明明是提醒读者不要移除
    filter_horizontal = ('authors',)     ########################### publisher一定要在fields 中

选择框

class BookAdmin(admin.ModelAdmin):
    ...
    raw_id_fields = ('publisher',)  #######  这条语句将默认是下拉框的变成文本框(旁边的放大镜可弹框选择)

py_Django的管理界面常见组件

py_Django的管理界面常见组件

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。


当前文章:py_Django的管理界面常见组件-创新互联
转载注明:http://cdiso.cn/article/dgdcps.html

其他资讯