中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Django在admin里如何配置

發布時間:2020-11-25 11:44:12 來源:億速云 閱讀:122 作者:小新 欄目:編程語言

這篇文章給大家分享的是有關Django在admin里如何配置的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。

Django自帶的后臺管理是Django明顯特色之一,可以讓我們快速便捷管理數據。后臺管理可以在各個app的admin.py文件中進行控制。以下是總結出比較實用的配置。

基本設置

1、應用注冊

若要把app應用顯示在后臺管理中,需要在admin.py中注冊。這個注冊有兩種方式,我比較喜歡用裝飾器的方式。

先看看普通注冊方法。打開admin.py文件,如下代碼:

from django.contrib import admin
from blog.models import Blog
  
#Blog模型的管理器
class BlogAdmin(admin.ModelAdmin):
    list_display=('id', 'caption', 'author', 'publish_time')
     
#在admin中注冊綁定
admin.site.register(Blog, BlogAdmin)

上面方法是將管理器和注冊語句分開。有時容易忘記寫注冊語句,或者模型很多,不容易對應。

還有一種方式是用裝飾器,該方法是Django1.7的版本新增的功能:

from django.contrib import admin
from blog.models import Blog
  
#Blog模型的管理器
@admin.register(Blog)
class BlogAdmin(admin.ModelAdmin):
    list_display=('id', 'caption', 'author', 'publish_time')

該方式比較方便明顯,推薦用這種方式。

2、admin界面漢化

默認admin后臺管理界面是英文的,對英語盲來說用起來不方便。可以在settings.py中設置:

LANGUAGE_CODE = 'zh-CN'

TIME_ZONE = 'Asia/Shanghai'

1.8版本之后的language code設置不同:

LANGUAGE_CODE = 'zh-hans'

TIME_ZONE = 'Asia/Shanghai'

記錄列表基本設置

比較實用的記錄列表設置有顯示字段、每頁記錄數和排序等。

from django.contrib import admin
from blog.models import Blog
  
#Blog模型的管理器
@admin.register(Blog)
class BlogAdmin(admin.ModelAdmin):
    #listdisplay設置要顯示在列表中的字段(id字段是Django模型的默認主鍵)
    list_display = ('id', 'caption', 'author', 'publish_time')
    
    #list_per_page設置每頁顯示多少條記錄,默認是100條
    list_per_page = 50
    
    #ordering設置默認排序字段,負號表示降序排序
    ordering = ('-publish_time',)
  
    #list_editable 設置默認可編輯字段
    list_editable = ['machine_room_id', 'temperature']
  
    #fk_fields 設置顯示外鍵字段
     fk_fields = ('machine_room_id',)

篩選器

篩選器是Django后臺管理重要的功能之一,而且Django為我們提供了一些實用的篩選器。

主要常用篩選器有下面3個:

from django.contrib import admin
from blog.models import Blog
  
#Blog模型的管理器
@admin.register(Blog)
class BlogAdmin(admin.ModelAdmin):
    list_display = ('id', 'caption', 'author', 'publish_time')
     
    #篩選器
    list_filter =('trouble', 'go_time', 'act_man__user_name', 'machine_room_id__machine_room_name') #過濾器
    search_fields =('server', 'net', 'mark') #搜索字段
    date_hierarchy = 'go_time'    # 詳細時間分層篩選 

顏色顯示

想對某些字段設置顏色,可用下面的設置:

from django.db import models
from django.contrib import admin
from django.utils.html import format_html
 
class Person(models.Model):
    first_name = models.CharField(max_length=50)
    last_name = models.CharField(max_length=50)
    color_code = models.CharField(max_length=6)
 
    def colored_name(self):
        return format_html(
            '<span style="color: #{};">{} {}</span>',
            self.color_code,
            self.first_name,
            self.last_name,
        )
 
class PersonAdmin(admin.ModelAdmin):
    list_display = ('first_name', 'last_name', 'colored_name')

感謝各位的閱讀!關于Django在admin里如何配置就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

胶州市| 元氏县| 大名县| 蓬安县| 临城县| 夏河县| 云安县| 叙永县| 奉新县| 广丰县| 玛多县| 余姚市| 岳普湖县| 安乡县| 精河县| 丹江口市| 靖江市| 三穗县| 灵武市| 白山市| 乐安县| 永州市| 泾川县| 宣武区| 砀山县| 阜南县| 宜兴市| 巴南区| 咸宁市| 江北区| 武汉市| 绥滨县| 鲁甸县| 博白县| 河源市| 白水县| 新津县| 宁都县| 新闻| 谢通门县| 荣成市|