• <noscript id="e0iig"><kbd id="e0iig"></kbd></noscript>
  • <td id="e0iig"></td>
  • <option id="e0iig"></option>
  • <noscript id="e0iig"><source id="e0iig"></source></noscript>
  • Django~Admin

    admin

    django amdin是django提供的一個后臺管理頁面,給管理頁面提供完善的html和css,使得你在通過Model創建完數據庫表之后,就可以對數據進行增刪改查,它是django強大功能之一,它能共從數據庫中讀取數據,呈現在頁面中,進行管理。默認情況下,它的功能已經非常強大,如果你不需要復雜的功能,它已經夠用,但是有時候,一些特殊的功能還需要定制,比如搜索功能,下面這一系列文章就逐步深入介紹如何定制適合自己的admin應用。

     

    1 首先我們用pycharm創建一個Django項目

     

    2 創建數據庫表(app01下的models.py)

    from django.db import models

    # Create your models here.
    class Publisher(models.Model):
       name = models.CharField(max_length=30, verbose_name="名稱")
       address = models.CharField("地址", max_length=50)
       city = models.CharField('城市', max_length=60)
       state_province = models.CharField(max_length=30)
       country = models.CharField(max_length=50)
       website = models.URLField()
       class Meta:
           verbose_name = '出版商'
           verbose_name_plural = verbose_name

       def __str__(self):
           return self.name

    class Author(models.Model):
       name = models.CharField(max_length=30)

       def __str__(self):
           return self.name

    class AuthorDetail(models.Model):
       sex = models.BooleanField(max_length=1, choices=((0, '男'), (1, '女'),))
       email = models.EmailField()
       address = models.CharField(max_length=50)
       birthday = models.DateField()
       author = models.OneToOneField(Author, on_delete=None)

    class Book(models.Model):
       title = models.CharField(max_length=100)
       authors = models.ManyToManyField(Author)
       publisher = models.ForeignKey(Publisher, on_delete=None)
       publication_date = models.DateField()
       price = models.DecimalField(max_digits=5, decimal_places=2, default=10)
       def __str__(self):
           return self.title

     

    3 注冊和配置django admin 后臺管理頁面

    注冊medel類到admin的兩種方式:

    <1>   使用register的方法
    admin.site.register(Book,MyAdmin)
    <2>   使用register的裝飾器
    @admin.register(Book)

     

    認識ModelAdmin

    管理界面的定制類,如需擴展特定的model界面需從該類繼承。

    app01下的admin.py

    from django.contrib import admin
    # Register your models here.
    from app01.models import *
    # Register your models here.
    # @admin.register(Book)#----->單給某個表加一個定制
    class MyAdmin(admin.ModelAdmin):
       list_display = ("title","price","publisher")
       search_fields = ("title","publisher__name")
       list_filter = ("publisher__name",)
       ordering = ("price",)
       fieldsets =[
           (None,               {'fields': ['title']}),
           ('price information', {'fields': ['price',"publisher","publication_date"], 'classes': ['collapse']}),
       ]
    admin.site.register(Book,MyAdmin)
    admin.site.register(Publisher)
    admin.site.register(Author)
    admin.site.register(AuthorDetail)
    •  list_display:     指定要顯示的字段

    •  search_fields:  指定搜索的字段

    •  list_filter:        指定列表過濾器

    •  ordering:       指定排序字段

    •  fieldsets:      分組顯示

     

    4 打開terminal,同步數據庫,并創建管理員用戶

    同步數據庫

    python manage.py makemigrations

    python manage.py migrate

    并創建管理員用戶

    python manage.py createsuperuser

     

    5 管理界面默認是英文,可以在setting.py 文件中修改以下選項,變成中文

    LANGUAGE_CODE = 'zh-hans'

     

    6 啟動項目,訪問http://127.0.0.1:8000/admin,界面如下

     

    7 輸入剛才創建的管理員用戶名和密碼

    8 之后就可以對數據進行增刪改查了,怎么樣?是不是很強大!

     


    識別圖中二維碼,領取python全套視頻資料

    版權聲明:本文為a315612852原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。
    本文鏈接:https://blog.csdn.net/a315612852/article/details/102040067

    智能推薦

    django之admin站點

    使用Admin站點 假設我們要設計一個新聞網站,我們需要編寫展示給用戶的頁面,網頁上展示的新聞信息是從哪里來的呢?是從數據庫中查找到新聞的信息,然后把它展示在頁面上。但是我們的網站上的新聞每天都要更新,這就意味著對數據庫的增、刪、改、查操作,那么我們需要每天寫sql語句操作數據庫嗎? 如果這樣的話,是不是非常繁瑣,所以我們可以設計一個頁面,通過對這個頁面的操作來實現對新聞數據庫的增刪改查操作。那么...

    美化Django后臺Admin

    寫在前面的話 Django默認提供了一個后臺管理,但是相對比較簡約,下面介紹的是一個美化版的后臺,基于vue+element-ui。 安裝 安裝很簡單, 或者 然后在你的項目settings.py中INSTALLED_APPS的第一行加入simpleui即可。 下面是效果圖: 最后附上項目地址:https://github.com/newpanjing/simpleui...

    Django Admin站點

    Admin站點 假設我們要設計一個新聞網站,我們需要編寫展示給用戶的頁面,網頁上展示的新聞信息是從哪里來的呢?是從數據庫中查找到新聞的信息,然后把它展示在頁面上。 但是我們的網站上的新聞每天都要更新,這就意味著對數據庫的增、刪、改、查操作,那么我們需要每天寫sql語句操作數據庫嗎? 如果這樣的話,是不是非常繁瑣,所以我們可以設計一個頁面,通過對這個頁面的操作來實現對新聞數據庫的增刪改查操作。那...

    (Django admin全面漢化)

    Django admin全面漢化 漢化主要是以下幾個方面,漢化完就差不多全都是中文啦 1.漢化語言和時區 (語言)打開項目的setting.py文件----> 找到LANGUAGE_CODE改成zh-hans(中文-簡體) (時區)setting.py ---> TIME_ZONE改成Asia/Shanghai(亞洲/上海),==圖里有個錯誤哦!!!!==朋友們shanghai的第一個...

    猜你喜歡

    Django Admin管理

    新建的項目,首先創建一個超級用戶(即管理員賬號) 在urls中配置: 啟動服務器,在瀏覽器中輸入:http://127.0.0.1:8000/admin/: 為了讓 admin 界面管理某個數據模型,我們需要先注冊該數據模型到 admin, 現在我們已經有了boards模型,則可以在boards下的admin.py中添加如下一句: 此時再次打開剛剛的網頁:...

    Django Admin的使用

    Django Admin的使用 1、配置settings.py 2、遷移 3、創建管理員賬戶 4、登錄試試 5、個性化站點管理 6、數據管理 7、更改登錄頁面 1、配置settings.py 2、遷移 3、創建管理員賬戶 4、登錄試試 先運行 登錄 5、個性化站點管理 例: 6、數據管理 分組 同時插入多個數據 7、更改登錄頁面 首先寫一個login覆蓋原來的...

    Django系列——admin

    一、配置admin 創建用戶 1、在Tool –> run manage.py Task控制臺輸入createsuperuser 根據提示設置用戶名,密碼 2、訪問后臺管理系統: 先啟動服務:runserver 8000,再在瀏覽器輸入localhost:8000/admin 輸入用戶名,密碼,進入頁面 3、修改setting.py,將英文變為中文 二、配置用戶 在App下adm...

    HTML中常用操作關于:頁面跳轉,空格

    1.頁面跳轉 2.空格的代替符...

    freemarker + ItextRender 根據模板生成PDF文件

    1. 制作模板 2. 獲取模板,并將所獲取的數據加載生成html文件 2. 生成PDF文件 其中由兩個地方需要注意,都是關于獲取文件路徑的問題,由于項目部署的時候是打包成jar包形式,所以在開發過程中時直接安照傳統的獲取方法沒有一點文件,但是當打包后部署,總是出錯。于是參考網上文章,先將文件讀出來到項目的臨時目錄下,然后再按正常方式加載該臨時文件; 還有一個問題至今沒有解決,就是關于生成PDF文件...

    精品国产乱码久久久久久蜜桃不卡