Django框架(三):后台管理


1. 后台管理

在Java中,想要實現后台管理,是非常的麻煩的,但是在python中只需要幾行代碼,就可以實現數據庫的增刪改查了。

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

1.1 管理界面本地化

本地化是將顯示的語言、時間等使用本地的習慣,這里的本地化就是進行中國化,中國大陸地區使用簡體中文,時區使用亞洲/上海時區,注意這里不使用北京時區表示。

打開djangotest/settings.py文件,找到語言編碼、時區的設置項,將內容改為如下:

LANGUAGE_CODE = 'zh-hans' #使用中國語言

TIME_ZONE = 'Asia/Shanghai' #使用中國上海時間

1.2 創建管理員

創建管理員的命令如下,按提示輸入用戶名、郵箱、密碼。

python manage.py createsuperuser

接下來啟動服務器。

python manage.py runserver

打開瀏覽器,在地址欄中輸入如下地址后回車。

 http://127.0.0.1:8000/admin/

輸入前面創建的用戶名、密碼完成登錄。

登錄成功后界面如下,但是並沒有圖書、角色的管理入口,接下來進行第三步操作。

1.3 注冊模型類

登錄后台管理后,默認沒有我們創建的應用中定義的模型類,需要在自己應用中的admin.py文件中注冊,才可以在后台管理中看到,並進行增刪改查操作。

打開booktest/admin.py文件,編寫如下代碼:

from django.contrib import admin
from booktest.models import BookInfo,RoleInfo

admin.site.register(BookInfo)
admin.site.register(RoleInfo)

到瀏覽器中刷新頁面,可以看到模型類BookInfo和RoleInfo的管理了。

點擊類名稱"BookInfo"可以進入列表頁,默認只有一列。

在列表頁中點擊"增加"可以進入增加頁,Django會根據模型類的不同,生成不同的表單控件,按提示填寫表單內容后點擊"保存",完成數據創建,創建成功后返回列表頁。

在列表頁中點擊某行的第一列可以進入修改頁。

按照提示進行內容的修改,修改成功后進入列表頁。在修改頁點擊“刪除”可以刪除一項。

刪除:在列表頁勾選想要刪除的復選框,可以刪除多項。

點擊執行后進入確認頁面,刪除后回來列表頁面。

數據就全部刪除了。

1.4 自定義管理頁面

在列表頁只顯示出了BookInfo object,對象的其它屬性並沒有列出來,查看非常不方便。 Django提供了自定義管理頁面的功能,比如列表頁要顯示哪些值。

打開booktest/admin.py文件,自定義類,繼承自admin.ModelAdmin類。

from django.contrib import admin
from booktest.models import BookInfo,RoleInfo

class BookInfoAdmin(admin.ModelAdmin):
    list_display = ['id', 'btitle', 'bpub_date']
class RoleInfoAdmin(admin.ModelAdmin):
    list_display = ['id', 'rname','rgender','rcomment']

admin.site.register(BookInfo,BookInfoAdmin)
admin.site.register(RoleInfo,RoleInfoAdmin)

刷新BookInfo的列表頁,所有屬性都顯示出來了。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM