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项目的 正常运行,也要统一迁移

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

新增或修改数据库的信息

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

相关推荐
自由随风飘3 小时前
python 题目练习1~5
开发语言·python
天若有情6735 小时前
【java EE】IDEA 中创建或迁移 Spring 或 Java EE 项目的核心步骤和注意事项
后端·spring·java-ee·intellij-idea
fl1768315 小时前
基于python的天气预报系统设计和可视化数据分析源码+报告
开发语言·python·数据分析
闲人编程6 小时前
Python与区块链:如何用Web3.py与以太坊交互
python·安全·区块链·web3.py·以太坊·codecapsule
Want5956 小时前
Python汤姆猫
开发语言·python
大鱼七成饱6 小时前
💥 从崩溃到稳定:我踩过的 Rust Tokio 线程池坑(含代码示例)
后端
喵个咪7 小时前
开箱即用的GO后台管理系统 Kratos Admin - 站内信
后端·微服务·go
花姐夫Jun7 小时前
基于Vue+Python+Orange Pi Zero3的完整视频监控方案
vue.js·python·音视频
韩立学长7 小时前
基于Springboot的旧物公益捐赠管理系统3726v22v(程序、源码、数据库、调试部署方案及开发环境)系统界面展示及获取方式置于文档末尾,可供参考。
数据库·spring boot·后端
Dyan_csdn7 小时前
springboot系统设计选题3
java·spring boot·后端