Django模型实现MySQL的增删改查

上周有学弟问我django后台的功能,周末空闲时间写了一个小案例,仅供学习参考

1.定义模型

通过django操作数据库,以学生表为例,学生信息包括学生姓名、性别、年龄

app文件夹下的models.py文件


from django.db import models

# 定义一个学生模型
class Student(models.Model):
    """
    s_name字段类型为charField写可变字符的,django是char类型,最大长度为10,unique代表是否唯一
    s_age字段类型为IntegerField代表是int类型的,默认值是16
    s_sex字段类型为布尔类型,默认值是1
    """
    s_name = models.CharField(max_length=10, unique=True)
    s_age = models.IntegerField(default=16)
    s_sex = models.BooleanField(default=1)
    """
    添加操作时间和创建时间字段
    """
    operator_time = models.DateTimeField(auto_now=True)
    create_time = models.DateTimeField(auto_now_add=True)

    # 定义模型中数据库的表名
    class Meta:
        db_table = 'student'

2.数据迁移

将定义好的模型和字段迁移到MySQL中

python manage.py makemigrations
python manage.py migrate

3.查看表信息

在数据库django01中刷新表,产生一个新的表student

表中含有了id,s_name,s_age,s_sex等字段

在这里插入图片描述

4.配置admin.py

目的是在django后台中导入模型,模型的名字是student

from django.contrib import admin
from app.models import Student

# 在后台导入模型,模型名字叫student
admin.site.register(Student)

5.运行查看

此时登录django后台我们可以看到新增了学生student

在这里插入图片描述
这样就可以在后台对数据库进行操作了,这样就实现了没有写sql语句而是通过django后台完成了对表的增删改查操作。

6.操作测试

(1)添加记录
例如我们从web端手动添加一个记录并保存:

名字:孙悟空;年龄:30

在这里插入图片描述
在这里插入图片描述
在MySQL数据库刷新一下sql表,会看到添加了一条记录,上面有创建时间和修改时间
在这里插入图片描述

(2)修改记录
在web端django后台将孙悟空年龄修改成18,刷新一下数据库表,创建时间没有修改,操作时间修改成刚才改年龄的时间
在这里插入图片描述
在这里插入图片描述
查看后端MySQL对应的数据信息

在这里插入图片描述
(3)删除记录
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
此时查看MySQL数据库信息,记录已经删除
在这里插入图片描述

3.说明

a.一般情况下实际项目中一般不用django自带的后台

b.对数据的增删改查就是对模型的操作

发布了450 篇原创文章 · 获赞 120 · 访问量 20万+

猜你喜欢

转载自blog.csdn.net/ZZQHELLO2018/article/details/105618231