麻豆小视频在线观看_中文黄色一级片_久久久成人精品_成片免费观看视频大全_午夜精品久久久久久久99热浪潮_成人一区二区三区四区

首頁 > 編程 > Python > 正文

Django中數據庫的數據關系:一對一,一對多,多對多

2020-02-15 23:18:09
字體:
來源:轉載
供稿:網友

一對一:

一對一的關系極為一個數據僅對應一個數據,用下圖的結構圖可以幫助理解:

下面用代碼實現一下,首先要創建工程項目如下:

接著,我們定義模型:

來到models.py文件,創建兩個模型:

from django.db import models# Create your models here.class One(models.Model):  oname = models.CharField(max_length=20,null=True)  oage = models.CharField(max_length=20,null=True)  odate = models.DateField(null=True)class Two(models.Model):# 設置一對一關系,是通過將表中的字段設置為主鍵完成的# on_delete=models.CASCADE 當父表中的某一條數據刪除的時候  # 相關字表中的數據也會被刪除  tsub = models.OneToOneField(One,on_delete=models.CASCADE,primary_key=True)  tfond = models.CharField(max_length=20,null=True)  tdes = models.CharField(max_length=200,null=True)

來到myPro文件夾下添加以下兩句代碼:

import pymysqlpymysql.install_as_MySQLdb()

下面可以遷移文件:

python manage.py makemigrationspython manage.py migrate

這樣我們就創建了兩個表:

來到views.py文件中添加數據,代碼如下:

from django.shortcuts import renderfrom .models import One,Two# Create your views here.def index(request):  o1 = One.objects.create(oname='張三',oage=11,odate='2011-11-11')  o2 = One.objects.create(oname='張三2',oage=12,odate='2012-12-12')  t1 = Two.objects.create(tsub=o1,tfond='o1',tdes='我喜歡o1')  t2 = Two.objects.create(tsub=o2,tfond='o2',tdes='我喜歡o2')  return render(request,'index.html')

運行之后,將添加數據的代碼注釋掉,否則后面每運行一次都會添加。

下面,我們通過查詢數據來甄別其中的關系。

def select(request):  t1 = Two.objects.get(tsub__oname = '張三')  return render(request,'index.html',{'t1':t1})

一對多

即一個對象對應著對個對象。

創建模型代碼:

from django.db import models# Create your models here.class People(models.Model):  name = models.CharField(max_length=50)  card_num = models.IntegerField(default=0)class Card(models.Model):  number = models.CharField(max_length=20)  person = models.ForeignKey(People,on_delete=models.CASCADE)  source = models.CharField(max_length=50)

urls.py路由設置:

from django.contrib import adminfrom django.urls import pathfrom myApp import viewsurlpatterns = [  path('admin/', admin.site.urls),  path('add/',views.add),  path('select/',views.select),]            
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 成人免费网站在线观看视频 | 国产美女视频一区二区三区 | 日韩黄色片免费看 | 91一区二区在线观看 | 一级电影免费 | 国外成人在线视频 | 欧美一级淫片免费播放口 | 精品久久久久久久久中文字幕 | 亚洲午夜国产 | 日本欧美一区二区三区视频麻豆 | 欧美一级特黄aaaaaa在线看首页 | 国产手机av在线 | 欧美亚洲国产成人 | 国产乱弄 | 欧美成人一级 | 久久久精品视频网站 | 91情侣在线偷精品国产 | 久久午夜国产 | 黄色影院在线看 | 国产精品一区二区三区99 | 欧美激情天堂 | 国产一区免费在线 | 中文字幕在线播放第一页 | 亚洲国产午夜精品 | 亚洲国产成人一区二区 | 88xx成人永久免费观看 | 国产一区二区视频在线播放 | 欧美性受xxxx白人性爽 | 最新中文在线视频 | 欧美一区二区三区久久精品视 | 日韩毛片一区二区三区 | 久久亚洲国产午夜精品理论片 | 91一区二区三区久久久久国产乱 | 午夜色视频在线观看 | 亚洲一区二区免费 | 91精品最新国内在线播放 | 911网站大全在线观看 | 黄色大片免费网站 | 国产噜噜噜噜久久久久久久久 | 久久久久久久亚洲视频 | 鲁人人人鲁人人鲁精品 |