Django 连接数据库,数据库表字段的增删改查
Posted bigbox
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Django 连接数据库,数据库表字段的增删改查相关的知识,希望对你有一定的参考价值。
如何获取前端数据
request方法:
获取前端数据的方式: request.POST(获取表单中发送的数据)、request.GET (获取的是url后面跟的数据)
前端:注意name属性的值即为后台大字典的key ,即通过key来取到前端发过来的数据
后端:
views : request.POST.get() 方法默认取列表中的最后一个值,request.POST.getlist() 取列表
数据库:Django连接数据库配置:
1. setting.py : 配置数据库
DATABASES = {
‘default‘: {
‘ENGINE‘: ‘django.db.backends.mysql‘,
‘NAME‘: ‘day50‘,
‘HOST‘: ‘127.0.0.1‘,
‘PORT‘: 3306,
‘USER‘: ‘root‘,
‘PASSWORD‘: ‘123‘
}
}
2. __init__.py: 项目的__init__文件 或者 app的__init__文件
import pymysql
pymysql.install_as_MySQLdb()
3. 重启Django服务即可链接数据库:
创建数据库表
1.创建数据库表:数据库必须是先创建好的,然后通过models 创建表
2. *************************数据库迁移(同步)命令************************
1.python3 manage.py makemigrations # 仅仅是将你对数据库的改动记录到某个小本本上(migrations文件夹)
2.python3 manage.py migrate # 将改动真正的同步到数据库中
快捷方法: makemigrations 、 migrate
3. 字段的增删的增删改查操作 (数据完成增删改查之后,直接执行 makemigrations、migrate即可更新到数据库)
字段的增删改查 字段的增 特别注意 1.要么给该字段设置默认值 2.要么运行该字段可以为空 字段的查 ... 字段的改 修改models代码 之后执行数据库迁移命令即可 字段的删 只要注释掉对应的字段 执行数据库迁移命令就会将对应的字段及数据信息全部删除(慎用)
4.数据的增删查改
数据的增删改查
查
1.filter()
from app01 import models
@@@@ res = models.User.objects.filter(username=‘jason‘) # select * from user where username=‘jason‘
# 返回的结果是一个列表 支持索引取值但是不支持负数并且不推荐使用 推荐你使用它给你封装好的方法
user_obj = res.first()
# filter方法条件不存在的时候 不会报错返回的是一个空列表
"""
filter括号内直接放多个关键字参数 并且多个关键字参数之间是and关系
res = models.User.objects.filter(username=‘jason‘,password=‘123‘) # select * from user where username=‘jason‘ and password=‘123‘;
"""
2.查所有的数据
1.filter() 括号内不写拿所有
<QuerySet [<User: jason>, <User: egon>, <User: sean>, <User: admin>, <User: 你不行>]>
2.all() 查询所有数据
<QuerySet [<User: jason>, <User: egon>, <User: sean>, <User: admin>, <User: 你不行>]>
增
1.create()
user_obj = models.User.objects.create(name=username,password=password)
print(user_obj,user_obj.name)
# 该方法有返回值 返回值就是当前被创建的对象本身
2.对象的绑定方法
# 方式2
# 1 先生成一个User对象
user_obj = models.User(name=username,password=password)
# 2 调用对象的绑定方法
user_obj.save()
删
用户点击谁 你的后端就应该删除
后端如何获取用户想要删除的数据id?
models.User.objects.filter(id=delete_id).delete() # 将filter过滤出来的数据全部删除 批量删除
改
如何获取用户想要修改的数据id
根据数据id获取数据并且展示到前端页面供用户查看
# 方式1(推荐) 批量更新
models.User.objects.filter(id=edit_id).update(name=username,password=password)
# 方式2(了解)
# 1 先获取数据对象
edit_obj = models.User.objects.filter(id=edit_id).first()
# 2 再修改对象属性
edit_obj.name = username
edit_obj.password = password
# 3 调用对象的绑定方法保存
edit_obj.save()
以上是关于Django 连接数据库,数据库表字段的增删改查的主要内容,如果未能解决你的问题,请参考以下文章