语句:django-admin startproject mysite
项目启动:![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-GeFvY0IT-1657070092229)(C:\Users\56213\AppData\Roaming\Typora\typora-user-images\image-20220701155628257.png)]](https://1000bd.com/contentImg/2022/07/06/141236858.png)
创建一个新app文件 python manage.py startapp index ![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-oDuUdefq-1657070092231)(C:\Users\56213\AppData\Roaming\Typora\typora-user-images\image-20220701160345355.png)]](https://1000bd.com/contentImg/2022/07/06/141237115.png)
创建数据库,再Navicat中创建新数据库
在setting.py文件中导入该代码
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'NAME':'demo' , # 本项目的数据库
'USER':'root', # MySQL的用户名
'PASSWORD':'123456' # MySQL的密码
}
}
创建与数据库关联的模型层:
在Setting.py 中 INSTALLED_APPS 写入 模型层的上级文件 ‘index’
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-7JKdfDuv-1657070092231)(C:\Users\56213\AppData\Roaming\Typora\typora-user-images\image-20220701163047881.png)]](https://1000bd.com/contentImg/2022/07/06/141237412.png)
在 index/models.py文件中加入
from django.db import models
# Create your models here.
class Question(models.Model):
question_text = models.CharField(max_length=200) # 问题长度
pub_date = models.DateTimeField('date_published')
class Choice(models.Model):
question = models.ForeignKey(Question, on_delete=models.CASCADE) # 外键,与Question关联
choice_text = models.CharField(max_length=200) #
votes = models.IntegerField(default=0) # 选票
使用语句 python manage.py makemigrations,查看与数据库的差别
使用语句 python manage.py migrate,进行数据迁移
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-rvgfaCnA-1657070092231)(C:\Users\56213\AppData\Roaming\Typora\typora-user-images\image-20220701163352136.png)]](https://1000bd.com/contentImg/2022/07/06/141237693.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-9xtQqrNx-1657070092232)(C:\Users\56213\AppData\Roaming\Typora\typora-user-images\image-20220701163402343.png)]](https://1000bd.com/contentImg/2022/07/06/141238161.png)
创建超级用户
语句:pyhton manage.py createsuperuser 名字
提供Django后台与数据库链接
在index/admin.py文件中
from django.contrib import admin
# Register your models here.
from .models import Question, Choice
admin.site.register(Question) # register登记,注册;site 位置,网站,站点
admin.site.register(Choice)
然后启动Django服务 python manage.py runserver 127.0.0,1:8008
在服务器中添加数据更改数据也会同步显示到Navicat数据库中
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-fjhkMYUI-1657070092232)(C:\Users\56213\AppData\Roaming\Typora\typora-user-images\image-20220701165827986.png)]](https://1000bd.com/contentImg/2022/07/06/141238447.png)

![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-Vzr8b54x-1657070092234)(C:\Users\56213\AppData\Roaming\Typora\typora-user-images\image-20220701165836943.png)]](https://1000bd.com/contentImg/2022/07/06/141238734.png)
![[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-zpLztaAg-1657070092234)(C:\Users\56213\AppData\Roaming\Typora\typora-user-images\image-20220701165805328.png)]](https://1000bd.com/contentImg/2022/07/06/141239015.png)