Django数据库配置+迁移

目录

配置settings.py

在项目下新建bookstore应用

将新建应用添加到项目中

创建模型

执行数据库信息迁移

新增或修改数据库的信息


配置settings.py

找到项目同名文件夹下的settings.py文件,将原有的django默认配置修改为下图

引擎只需要将最后一部分改为对应数据库,如mysql、oracle等

NAME对应当前使用的数据库名称

USER为用户名,PASSWORD为密码,HOST为ip地址,本地可替换为localhost

PORT为数据库端口号,mysql默认使用3306端口

在项目下新建bookstore应用

附上从创建项目到创建项目下的应用的全部指令
我的项目名称为mysite,应用名称为bookstore

将新建应用添加到项目中

创建模型

django中的模型对应到数据库中就是一张表

创建该类模型必须继承django中已有的一个Model类,且必须写在当前文件夹下的models.py中

模型类中的每个属性都一一对应表中的每个字段
在模型类中可新建一个Meta类,该类的属性用于操控表的属性

python 复制代码
#models.py
from django.db import models


# Create your models here.
class Book(models.Model):
    title = models.CharField('书名', max_length=50, default='', unique=True)
    pub = models.CharField('出版社', max_length=100, default='', null=False)
    price = models.DecimalField('价格', max_digits=7, decimal_places=2)
    info = models.CharField('描述', max_length=100, default='')
    market_price = models.DecimalField('零售价', max_digits=7, decimal_places=2, default=0.0)

    class Meta:
        db_table = 'book'


class Author(models.Model):
    name = models.CharField('姓名', max_length=11)
    age = models.IntegerField('年龄', default=1)
    email = models.EmailField('邮箱', null=True)

    class Meta:
        db_table = 'author'

执行数据库信息迁移

命令行定位至manage.py的上一级(可以直接调用到manage.py即可)

我的当前位置是D:\PyCharm\PyCharm Community Edition 2022.3.2\pydoc\DjAPP\mysite>

按顺序执行下面两行指令

python 复制代码
python manage.py makemigrations

python manage.py migrate

看到类似显示就是执行正确了,其中有很多是django中自带的数据库信息,为了保障django项目的 正常运行,也要统一迁移

执行完后对应的数据库结构如下所示

新增或修改数据库的信息

只需再次执行两行指令即可更新,但切记有任何修改或新增操作时,都要第一时间进行数据库迁移操作,避免后续对数据库数据的操作出错

相关推荐
Mars酱8 分钟前
1分钟了解响应式编程 | 合适的架构调整
java·后端·响应式编程
浪客川13 分钟前
【百例RUST - 005】所有权和切片
开发语言·后端·rust
ChildrenGreens20 分钟前
otel-collector全家桶
后端
goodlook012320 分钟前
监控平台搭建-日志-springboot直接推送loki篇(九)
java·spring boot·后端·grafana
老土豆豆豆22 分钟前
你们Agent如何实现Code-Execution的?或许Agent-Sandbox也是你们需要的
后端
数据大魔方23 分钟前
【期货量化入门】期权交易入门:从零开始学期权量化(TqSdk完整教程)
数据库·python·mysql·算法·区块链·程序员创富
程序员爱钓鱼42 分钟前
Node.js 编程实战:测试与调试 —— Mocha / Jest / Supertest 使用指南
前端·后端·node.js
小楼v42 分钟前
深入全面理解幂等性设计原理及实现幂等的主流方案
后端·雪花算法·幂等性·幂等设计
@zulnger43 分钟前
python 学习笔记(文件和目录操作)
笔记·python·学习