欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

Djangoweb開(kāi)發(fā)系列(三)模型與管理后臺(tái)-創(chuàng)新互聯(lián)

一 前言

創(chuàng)新互聯(lián)建站是專(zhuān)業(yè)的海州網(wǎng)站建設(shè)公司,海州接單;提供成都網(wǎng)站設(shè)計(jì)、網(wǎng)站制作、外貿(mào)營(yíng)銷(xiāo)網(wǎng)站建設(shè),網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專(zhuān)業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行海州網(wǎng)站開(kāi)發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專(zhuān)業(yè)做搜索引擎喜愛(ài)的網(wǎng)站,專(zhuān)業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來(lái)合作!

在第(二)節(jié)介紹了模型Book的設(shè)計(jì),實(shí)質(zhì)就是在models.py里寫(xiě)了一個(gè)Book類(lèi),定義了變量和元數(shù)據(jù),也就是設(shè)計(jì)數(shù)據(jù)庫(kù)里對(duì)應(yīng)的表應(yīng)該長(zhǎng)什么樣子。就如前面所說(shuō),你可以將定義的模型類(lèi)理解成數(shù)據(jù)庫(kù)的一張表,類(lèi)的實(shí)例對(duì)象理解成表中一行數(shù)據(jù),類(lèi)中的變量對(duì)應(yīng)表中字段。Python奉行代碼優(yōu)先的理念,通過(guò)定義模型類(lèi),實(shí)現(xiàn)python代碼與數(shù)據(jù)庫(kù)操作的解耦,即使Python開(kāi)發(fā)者不會(huì)數(shù)據(jù)庫(kù)SQL,也能輕松完成數(shù)據(jù)庫(kù)操作。

模型類(lèi)定義完后,如何實(shí)現(xiàn)在數(shù)據(jù)庫(kù)生成對(duì)應(yīng)的表呢?如何通過(guò)Django后臺(tái)管理模型呢?這就是本節(jié)要回答的問(wèn)題。

二 模型遷移

遷移(migration),是一個(gè)將models.py定義的模型類(lèi)映射到數(shù)據(jù)庫(kù)并生成數(shù)據(jù)表的動(dòng)作,主要涉及兩個(gè)命令:

python manage.py makemigrations python manage.py migrate


命令說(shuō)明:
1. 該命令的執(zhí)行位置是在manage.py文件的同級(jí)目錄;
2. 命令順序執(zhí)行,即先執(zhí)行makemigrations,完成后,再執(zhí)行migrate;
3. Django默認(rèn)使用SQLlite,不需要做任何配置,但如果使用的其他數(shù)據(jù)庫(kù),需要預(yù)先在項(xiàng)目的settings.py配置、指定數(shù)據(jù)庫(kù);

可能你會(huì)疑惑,遷移為什么要搞成兩步呀?
原因是這樣的
makemigrations命令,帶著make,該動(dòng)作只是將模型改動(dòng)生成到文件,默認(rèn)是在項(xiàng)目的migrations目錄下,注意此時(shí)只是生成了一個(gè)可讀可編輯的文本文件,并沒(méi)有對(duì)數(shù)據(jù)庫(kù)進(jìn)行改動(dòng),這樣做的目的是,便于通過(guò)版本控制系統(tǒng)(如git、svn)記錄、同步你對(duì)模型的修改,畢竟版本控制系統(tǒng)是無(wú)法和數(shù)據(jù)庫(kù)打交道的。有了中間記錄,就可以放心的使用migrate將改動(dòng)同步到數(shù)據(jù)庫(kù)了。

三 通過(guò)Admin后臺(tái)管理模型

Django的省心之處就是它會(huì)基于項(xiàng)目模型創(chuàng)建一套簡(jiǎn)易的后臺(tái)管理系統(tǒng),通過(guò)該系統(tǒng)可以方便的對(duì)模型進(jìn)行增刪改查,雖然也被很多人詬病,Django太重、集成度太強(qiáng),但既然有現(xiàn)成的、省事兒的,為啥還要自己造輪子呢?!

進(jìn)入Admin后臺(tái)管理的步驟如下:

1. 首次登錄,創(chuàng)建一個(gè)admin站點(diǎn)用戶(hù),命令如下:

python manage.py createsuperuser

根據(jù)提示輸入用戶(hù)名、郵箱地址、密碼即可。

2. 啟動(dòng)服務(wù)器,命令如下:

python manage.py runserver 127.0.0.1:8000

IP:端口根據(jù)實(shí)際修改,啟動(dòng)后,瀏覽器訪(fǎng)問(wèn)http://127.0.0.1:8000/admin/,就會(huì)看到管理后臺(tái)界面,如圖:

Django web開(kāi)發(fā)系列(三)模型與管理后臺(tái)
上圖中管理后臺(tái)登錄界面的站點(diǎn)名字已經(jīng)被我從默認(rèn)的Django Administration改成圖書(shū)借閱管理系統(tǒng)了,后面會(huì)介紹如何改。

3. 在amdin.py中使用admin.site.register()注冊(cè)模型

from django.contrib import admin from django.contrib.auth.models import Group,User as AdminUser from .models import Book,User,ValidUser # Register your models here. admin.site.register(Book)

注意:
只有注冊(cè)的模型才會(huì)出現(xiàn)在admin后臺(tái)管理系統(tǒng)。

4. 再次進(jìn)入管理后臺(tái)界面,發(fā)現(xiàn)模型book已經(jīng)出現(xiàn)在管理后臺(tái),如圖:

Django web開(kāi)發(fā)系列(三)模型與管理后臺(tái)

此時(shí),你可能會(huì)發(fā)現(xiàn)模型名字怎么變成圖書(shū)了,還記得在(二)節(jié)中設(shè)計(jì)模型用的verbose_name = '圖書(shū)'吧,就是這個(gè)效果。

四 定制Admin后臺(tái)

通過(guò)上述步驟,已經(jīng)可以在admin管理后臺(tái)看到定義的模型了,后臺(tái)頁(yè)面顯示和布局都是默認(rèn)的,Django提供了ModelAdmin類(lèi)實(shí)現(xiàn)對(duì)模型展示的定制,如下是對(duì)BOOK模型進(jìn)行的簡(jiǎn)單定制:

@admin.register(Book) class BookAdmin(admin.ModelAdmin):     list_display = ('book_name','author_name','total_num','available_num','book_img')     #readonly_fields = ('book_name','author_name','total_num','available_num')     search_fields = ('book_name','author_name')     list_filter = ['available_num']     list_per_page = 10     admin.AdminSite.site_header = '圖書(shū)借閱管理系統(tǒng)'     admin.AdminSite.site_title = '管理后臺(tái)'


說(shuō)明:
1. 直接可以按照以上代碼套路定制自己的后臺(tái),首先定義一個(gè)ModelAdmin的子類(lèi)BookAdmin,在該子類(lèi)里定制展示效果和特性,同時(shí)使用admin.register裝飾器,接收的參數(shù)就是需要定制的模型;
2. 常用定制字段說(shuō)明如下:
  1) list_display: 顯示在頁(yè)面的字段;
  2)readonly_fields: 指定哪些字段是只讀類(lèi)型;
  3)search_fields: 在頁(yè)面添加搜索框,且指定按哪些字段進(jìn)行搜索;
  4)list_per_page: 設(shè)置每頁(yè)顯示多少個(gè)對(duì)象,如果超過(guò),會(huì)進(jìn)行分頁(yè);
  5)admin.AdminSite.site_header:設(shè)置站點(diǎn)頁(yè)頭
  6)admin.AdminSite.site_title: 設(shè)置頁(yè)面標(biāo)題
  7)list_filter:過(guò)濾頁(yè)面元素

簡(jiǎn)單定制后,效果如下:

Django web開(kāi)發(fā)系列(三)模型與管理后臺(tái)

另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)cdcxhl.cn,海內(nèi)外云服務(wù)器15元起步,三天無(wú)理由+7*72小時(shí)售后在線(xiàn),公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國(guó)服務(wù)器、虛擬主機(jī)、免備案服務(wù)器”等云主機(jī)租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡(jiǎn)單易用、服務(wù)可用性高、性?xún)r(jià)比高”等特點(diǎn)與優(yōu)勢(shì),專(zhuān)為企業(yè)上云打造定制,能夠滿(mǎn)足用戶(hù)豐富、多元化的應(yīng)用場(chǎng)景需求。

新聞名稱(chēng):Djangoweb開(kāi)發(fā)系列(三)模型與管理后臺(tái)-創(chuàng)新互聯(lián)
地址分享:http://aaarwkj.com/article12/ccodgc.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供ChatGPT、響應(yīng)式網(wǎng)站、做網(wǎng)站、移動(dòng)網(wǎng)站建設(shè)標(biāo)簽優(yōu)化、網(wǎng)站設(shè)計(jì)公司

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設(shè)
国产原创传媒在线观看| 亚洲国产熟对白剧情一区二区| 亚洲女人淫片在线观看| 精品人妻av区天天看片| 我要看黄色一级性生活片| 国产亚洲高清国产拍精品| 久久久国产精品视频一区| 黄色免费大片在线播放| 国产亚洲欧美日韩中文字幕 | 夫妻性生活视频全过程| 国产精品一级片一区二区| 欧美日韩国产精品一区二区三区| 国产 亚洲 一区 二区| 国产性做爰片免费视频| 国产91人妻精品一区二区三区 | 亚洲精品黄色在线观看| 2021最新四虎永久免费| 不卡一区二区黄色av| 亚洲精品福利在线视频| 国产又大又长又粗又硬又猛| 一区二区三区乱码av| 国产亚洲高清国产拍精品| 98精品偷拍视频一区二区三区 | 中文字幕的国产在线播放| 亚洲精品在线观看午夜福利| 亚洲av乱码久久精品蜜桃| 日本精品在线一区二区| 美女高潮啪啪啪91| 不卡一区二区福利日本| 日韩人妖视频在线观看| 狠狠躁夜夜躁人人爽蜜桃| 亚洲国产午夜福利在线69| 国产一区二区在线乱码| 涩五月婷婷开心中文字幕| 日本最新一区二区三区视频| 日本免费的高清一区二区| 中文字幕在线精品乱码麻豆| 五月激情开心久久婷婷| 亚洲一区精品中文字幕| 日韩熟女av中文字幕| 精品毛片久久久久久久久|