您好,登錄后才能下訂單哦!
這篇文章主要講解了如何設(shè)計(jì)Django中的模型類,內(nèi)容清晰明了,對(duì)此有興趣的小伙伴可以學(xué)習(xí)一下,相信大家閱讀完之后會(huì)有幫助。
django中設(shè)計(jì)數(shù)據(jù)模型類是基于ORM的對(duì)象關(guān)系映射更方便的進(jìn)行數(shù)據(jù)庫(kù)中的數(shù)據(jù)操作。
python manage.py makemigrations python mange.py migrate
AutoField: 自動(dòng)增長(zhǎng),通常不需要指定,django自動(dòng)創(chuàng)建名為id的自動(dòng)增長(zhǎng)屬性
CharField: 字符串,必須指定的參數(shù): max_length 最大字符個(gè)數(shù)
TextFiled: 大文本字段,一般超過(guò)4000個(gè)字符
IntegerField: 整形
BooleanField: 布爾,支持Null,True
NullBooleanField: 支持Null,True,F(xiàn)alse
DateTimeField: 日期時(shí)間
FileField: 上傳文件字段
ImageField: 繼承與FileFiled,對(duì)上傳的內(nèi)容進(jìn)行校驗(yàn),確保是有效地圖片
ForeignKey: 外鍵,建立一對(duì)多關(guān)系
from django.db import models # Create your models here. class Subject(models.Model): """學(xué)科模型類""" nu = models.AutoField(primary_key=True) name = models.CharField(max_length=20,verbose_name = '學(xué)科名稱') intro = models.CharField(max_length=1000,verbose_name = '學(xué)科介紹') class Meta: db_table = 'tb_subject' verbose_name = '學(xué)科' verbose_name_plural = verbose_name def __str__(self): """定義數(shù)據(jù)對(duì)象的顯示信息""" return self.name
在pycharm終端中執(zhí)行數(shù)據(jù)庫(kù)建立遷移
python manage.py makemigrations
python manage.py migrate
migrations文件中會(huì)建立一個(gè).py文件
我們可以通過(guò)django自帶的admin后臺(tái)來(lái)看見我們所創(chuàng)建的數(shù)據(jù)模型類。
Aadmin
使用時(shí)先創(chuàng)建一個(gè)用戶名和密碼
在pycharm終端中輸入命令
python manage.py createsuperuser
根據(jù)提示輸入用戶名,郵箱,密碼。
并且在admin.py注冊(cè)模型類 并且顯示該有的數(shù)據(jù)列表
然后開啟django項(xiàng)目輸入 http://127.0.0.1 :8000/admin/
用戶名和密碼填寫
登陸進(jìn)去后就會(huì)看到創(chuàng)建的數(shù)據(jù)模型
點(diǎn)擊add可以添加一些數(shù)據(jù)
會(huì)有你寫的模型類
因?yàn)閯偛爬^承了SubjectAdmin類要求顯示學(xué)科的信息。
我們現(xiàn)在可以將模型數(shù)據(jù)映射視圖,展示到html頁(yè)面上。
在Views.py文件中使用Subject將數(shù)據(jù)集合拿到
在templates文件夾中創(chuàng)建一個(gè)index.html文件
使用django模板中的for循環(huán)將數(shù)據(jù)插入到html頁(yè)面中
啟動(dòng)django,打開本地網(wǎng)址
我們可以給頁(yè)面添加照片可以使得頁(yè)面更好看點(diǎn)
添加放置照片的文件夾在更目錄的同級(jí)目錄下
并且在settings中對(duì)static文件夾路徑加以說(shuō)明
在將html頁(yè)面修改
添加照片路徑
然后啟動(dòng)django點(diǎn)擊本地連接
接下來(lái)可以再加入模型數(shù)據(jù)庫(kù),點(diǎn)擊學(xué)科的時(shí)候可以展示那些老師以及老師的介紹。實(shí)現(xiàn)了數(shù)據(jù)的多對(duì)一或者一對(duì)多。
在models.py中建立老師的模型類
在admin.py中注冊(cè)老師得模型類
進(jìn)入admin后臺(tái),添加老師的一些數(shù)據(jù)
現(xiàn)在點(diǎn)擊科目,進(jìn)入到老師的詳情頁(yè),那的寫html文件和修改urls.py
再templatels文件夾中建立teachers.html文件
在書寫views.py,
然后點(diǎn)擊科目獲取老師數(shù)據(jù)
django的簡(jiǎn)單項(xiàng)目關(guān)于模型的展示設(shè)計(jì)都完成啦?。?!
看完上述內(nèi)容,是不是對(duì)如何設(shè)計(jì)Django中的模型類有進(jìn)一步的了解,如果還想學(xué)習(xí)更多內(nèi)容,歡迎關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。