亚洲免费在线-亚洲免费在线播放-亚洲免费在线观看-亚洲免费在线观看视频-亚洲免费在线看-亚洲免费在线视频

python全棧開發基礎知識學習——Django框架(六、Admin操作)

系統 1762 0

目錄

  • 一、Admin的配置
    • 1.激活管理工具
    • 2.使用管理工具
    • 3.注冊超級用戶
    • 4.修改語言
  • 二、管理數據模型
    • 1.注冊medel類到admin
    • 2.自定制類

一、Admin的配置

Admin是Django的一個強大的功能,它能從數據庫中讀取數據,并呈現在頁面中,進行管理。默認情況下,它的功能已經非常強大,如果你不需要復雜的功能,它已經夠用,但是有時候,一些特殊的功能還需要定制,比如搜索功能,下面這一系列文章就逐步深入介紹如何定制適合自己的admin應用。

1.激活管理工具

通常我們在生成項目時會在 urls.py 中自動設置好,當這一切都配置好后,Django 管理工具就可以運行了。

            
              # urls.py
from django.contrib import admin
from django.urls import path
 
urlpatterns = [
    path('admin/', admin.site.urls),
]

            
          

2.使用管理工具

啟動開發服務器,然后在瀏覽器中訪問 http://127.0.0.1:8000/admin/,得到如下界面:

python全棧開發基礎知識學習——Django框架(六、Admin操作)_第1張圖片

3.注冊超級用戶

你可以通過命令 python manage.py createsuperuser 來創建超級用戶,如下所示:

            
              # python manage.py createsuperuser
Username (leave blank to use 'root'): admin
Email address: 
Password:
Password (again):
Superuser created successfully.

            
          

郵箱地址可選,可填也可不填

注冊完成后,我們便可以登陸強大的管理系統.

4.修改語言

如果你覺得英文界面不好用,可以在setting.py 文件中修改以下選項

            
              LANGUAGE_CODE = 'en-us'  #LANGUAGE_CODE = 'zh-hans'

            
          

二、管理數據模型

1.注冊medel類到admin

            
              注冊medel的兩種方法:
		  <1>   使用register的方法
				admin.site.register(Book)
		  <2>   使用register的裝飾器
		  		@admin.register(Book)  		
	方法二后面需要加一個自定制類

實現代碼:
admin.site.register(models.Book)
admin.site.register(models.Publish)
admin.site.register(models.Author)

            
          

python全棧開發基礎知識學習——Django框架(六、Admin操作)_第2張圖片

當我們點擊某個數據進行管理時,還缺乏某些功能需要我們自己自定制,比如搜索,排序等等功能。

python全棧開發基礎知識學習——Django框架(六、Admin操作)_第3張圖片

2.自定制類

            
              from django.contrib import admin
from app import models

@admin.register(models.Book)
class BookAdmin(admin.ModelAdmin):
    list_display = ("id","name", 'price',)    #在每一條記錄上,指定要顯示的字段
    list_editable = ("name", "price",)       #可直接對字段進行編輯

    filter_horizontal = ("author",)
    # filter_vertical = ("author",)

    # list_per_page = 2    #對記錄進行分頁,每一頁只有XX條信息。
    search_fields = ("id", "name", )    #指定搜索的字段,可以選擇多個字段

    list_filter = ("publish","put_data",)    #指定列表過濾器
    ordering = ("price",)     # 指定排序字段,默認以創建時間排序
    
admin.site.register(models.Publish)
admin.site.register(models.Author)

            
          

python全棧開發基礎知識學習——Django框架(六、Admin操作)_第4張圖片

常見的自定制方法有這幾個,使用后能夠是我們的管理界面更加的強大

  • list_display: 指定要顯示的字段
  • search_fields: 指定搜索的字段
  • list_filter: 指定列表過濾器
  • ordering: 指定排序字段

當我們點擊書籍的ID時,我們可以對某本書籍進行具體的編輯
python全棧開發基礎知識學習——Django框架(六、Admin操作)_第5張圖片

其實,當我們在添加書籍的時候,沒有必要將所有的字段都需要填寫,如果有些字段可選填的,那么就可以隱藏起來,我們需要補充時,就可以填寫。這就要用到fieldsets,

            
                  fieldsets =[
        (None,               {'fields': ['name']}),   
        ('price information', {'fields': ['price',"publish"], 'classes': ['collapse']}),
        ('put data',{'fields': ["put_data"], 'classes': ['collapse']} ),
    ]

            
          

python全棧開發基礎知識學習——Django框架(六、Admin操作)_第6張圖片


更多文章、技術交流、商務合作、聯系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: 久久91精品国产91久久跳舞 | 九九久久免费视频 | 国产精品98视频全部国产 | 婷婷综合亚洲 | 亚洲激情综合 | 五月天婷婷激情视频 | 欧美最猛性xxxxx短视频 | 四虎精品视频 | 色视频在线免费观看 | 女人隐私秘视频黄www免费 | 欧美天天影院 | 精品国产一级毛片大全 | 中文字幕日韩欧美 | 欧美日韩亚洲精品一区 | 免费视频一区 | 免费精品美女久久久久久久久久 | 免费看曰批女人爽的视频网址 | 欧美啪啪毛片一区二区 | 久久精品a一国产成人免费网站 | 欧美乱一级在线观看 | 波多野结衣乳巨码无在线观看 | 欧美日韩一区二区三区毛片 | 日日噜噜夜夜狠视频免费 | 日韩成人免费aa在线看 | 可以免费观看的一级片 | 99久久国产免费福利 | 国产精品免费看 | 久久亚洲国产伦理 | 婷婷中文 | 久久天天丁香婷婷中文字幕 | 六月丁香色婷婷 | 97啪啪| 女人18毛片a级毛片免费看一 | 国产激情一区二区三区 | 亚洲乱码中文字幕久久 | 狠狠干综合 | 中文字幕欧美日韩 | 久久久久国产一级毛片高清片 | 国产大片91精品免费看3 | 日韩国产精品视频 | 国产精品一区二区三区免费 |