django是不能創建數據庫的,只能夠創建數據庫表,因此,我們在連接數據庫的時候要先建立一個數據庫。
在models.py中
from django.db import models class Publisher(models.Model): id = models.AutoField(primary_key=True) name = models.CharField(max_length=64,null=False,unique=True) def __str__(self): return "publisher_name:{}".format(self.name) class Book(models.Model): id = models.AutoField(primary_key=True) title = models.CharField(max_length=128,null=False) publisher = models.ForeignKey(to=Publisher,related_name="books") def __str__(self): return "book_title:{}".format(self.title) class Author(models.Model): id = models.AutoField(primary_key=True) name = models.CharField(max_length=16,null=False) book = models.ManyToManyField(to="Book") def __str__(self): return "author_name:{}".format(self.name)
進入的項目地址中,
輸入python manage.py makemigrations
輸入python manage.py migrate
我們就通過django生成了四張表:其中是以app為前綴的,我這里是person;存在關聯的表之間,名字用_連接,並命名。
接下來我們填充一些數據,
在項目路徑下輸入python manage.py shell打開django終端:
我們舉一個例子:
為方便起見,我們其他的數據在navicat中手動填充。最后效果如下(person_publisher,person_author,person_book,person_author_book):