Django-数据库操作

来源:互联网 发布:艾美仕待遇 知乎 编辑:程序博客网 时间:2024/06/16 19:33

Django 是 Python 编程语言驱动的一个开源模型-视图-控制器(MVC)风格的 Web 应用程序框架。使用 Django,我们在几分钟之内就可以创建高品质、易维护、数据库驱动的应用程序。接下来记录一下怎么在Django中使用数据库:

插入数据

  • 方法一
from app01 import modelsmodels.DjangoInfoInfo.objects.create(name="python",password=123)
  • 方法二
from app01 import modelsdic = {"name":"python","password":123}models.DjangoInfoInfo.objects.create(**dic)
  • 方法三
from app01 import modelsobj = models.DjangoInfo(name="python",password=123)obj.save()

查询数据

  • 查询所有
from app01 import modelsobj = models.DjangoInfo.objects.all()# obj为一个QuerySet对象,为可迭代对象
  • 查询一条
from app01 import modelsobj = models.DjangoInfo.objects.filter(id=1).first()
  • 多条件查询
from app01 import modelsobj = models.DjangoInfo.objects.filter(name="python",password=123).all()或者dic = {"name":"python","password":123}obj = models.DjangoInfo.objects.filter(**dic).all()

更新数据

  • 方法一
from app01 import models# 将id为1的密码改为345models.DjangoInfo.objects.filter(id=1).update(password=345)
  • 方法二
from app01 import modelsobj = models.DjangoInfo.objects.filter(id=1).first()obj.password = 345obj.save()

删除数据

from app01 import models# 将id为1的数据删除models.DjangoInfo.objects.filter(id=1).delete()

外键关联

from django.db import models# 表一class Person(models.Model):    uid = models.AutoField(primary_key=True)    name = models.CharField(max_length=32)# 表二  class Student(models.Model):    record = models.CharField(max_length=3)    name_id = models.ForeignKey("Person",to_field="uid")# name_id与Person表中的uid的关联,如没有to_field默认与Person表中的主键关联obj = models.Student.objects.filter(record=99).first()p = obj.name_id         # 此时获取的Person表对象print(obj.name_id_id)   # name_id对应Person表id的值
原创粉丝点击