Django中Admin站點的使用

2021-08-26 08:19:51 字數 2953 閱讀 2176

使用admin站點

django能夠根據定義的模型類自動地生成管理頁面

建立超級管理員

python manage.py createsuperuser

建立使用者名稱、密碼、郵箱

開啟瀏覽器,在位址列中輸入如下位址後回車

輸入前面建立的使用者名稱、密碼完成登入

登入成功後介面如下

但是並沒有我們自己應用模型的入口,接下來進行第三步操作

class

democlass

name = 'demo_class'

verbose_name = '圖書管理'

在自己應用中的admin.py檔案中註冊

開啟demo_class/admin.py檔案,編寫如下**:

from django.contrib import admin

from demo_class.models import bookinfo,heroinfo

admin.site

.register(bookinfo)

admin.site

.register(heroinfo)

到瀏覽器中重新整理頁面,可以看到模型類bookinfo和heroinfo的管理了

5.django提供的admin站點的展示效果可以通過自定義modeladmin類來進行控制

定義管理類需要繼承自admin.modeladmin類,如下

class

bookinfoadmin

(admin.modeladmin):

list_per_page = 10

# 控制列表展示數量,預設每頁顯示100條資料

列表中的列屬性如下展示字段,根據需求自己選擇要展示的內容和屬性

class

bookinfoadmin

(admin.modeladmin):

list_per_page = 2

# 控制列表展示數量

# 控制展示字段,字段顯示順序和列表中順序相同

list_display = ['id','btitle','bread','date']

# 指定搜尋字段

search_fields = ['btitle']

# 控制執行按鈕在上面或者在下面

actions_on_bottom = true

actions_on_top = false

# 設定過濾條件

list_filter = ['bread']

# 詳情頁控制

# fields = ['bread']

# 分組展示

fieldsets = (

('基本',),

('高階',)

)inlines = [bookinfotabularinline]

6.調整站點資訊未調整前如下圖:

admin.site.site_header 設定**頁頭

admin.site.site_title 設定頁面標題

admin.site.index_title 設定首頁標語

在demo_class/admin.py檔案中新增以下資訊:

admin.site.index_title = 'aaa'

admin.site.site_header = 'bbb'

admin.site.site_title = 'ccc'

重新整理**,效果如下

7.上傳

使用admin站點儲存,需要安裝python的操作包pip install pillow

1)配置

我們可以將上傳的檔案儲存在靜態檔案目錄中,如我們之前設定的static_files目錄中,在settings.py 檔案中新增上傳儲存目錄資訊

media_root=os.path.join(base_dir,"static_files/media")

2) 為模型類新增imagefield欄位

我們為之前的bookinfo模型類新增乙個imagefiled

class

bookinfo

(models.model):

image = models.imagefield(upload_to='booktest', verbose_name='', null=true)

# upload_to 選項指明該字段的儲存在media_root目錄中的哪個子目錄

3)進行資料庫遷移操作

python manage.py makemigrations

python manage.py migrate

進入admin站點的圖書管理頁面,選擇乙個圖書,能發現多出來乙個上傳的字段

Django的Admin站點管理

內容發布 負責新增 修改 刪除內容 公告訪問 在專案的根目錄下,執行命令 python manage.py createsuperuser 依次輸入使用者名稱 郵箱 密碼 密碼不能太複雜 修改setting.py language code zh hans time zone asia shangh...

django 表單和admin站點

1.表單 django內建表單的內容,使用forms模組的form類 在單獨的forms.py檔案中建立表單類和建立模型類的方法很像,然後檢視類用到表單,例項物件就可以 form類中內建一些方法,提供我們使用 比如 form bookform request.post post上傳的請求資料,通過自...

Django之admin站點管理

站點首頁 將專案裡models.py中的類名以中文顯示?可以在下圖中的位置插入這樣一段 class meta verbose name 房東資訊 verbose name plural 房東資訊 複數時 列表頁屬性django自帶的原始列表頁是長這樣滴 我們想要的頁面長這樣 所以,我們需要在專案裡的...