首页 > 其他分享 >django orm对象关系映射

django orm对象关系映射

时间:2023-11-20 20:44:55浏览次数:27  
标签:映射 models 创建 数据库 py django 对象 orm

orm不会帮你创建库 只能创建到表的层面
需要你自己提前创建好库
"""
# 对象关系映射
表 类
记录 对象
数据 对象属性/方法
"""
能够让一个不会sql语句的python程序员也能够简单快捷的操作数据库,极大的提升开发效率
"""

# 去应用下的models.py中书写模型类
# 类 模型类
# 表 模型表
class UserInfo(models.Model):
# 当你没有创建主键字段的时候orm会自动帮你创建一个名为id的主键字段
uid = models.AutoField(primary_key=True)
# uid int primary key auto_increment
username = models.CharField(max_length=32)
# username varchar(32) CharField字段一定要书写max_length参数
password = models.IntegerField()
# password int
**************************数据库迁移命令*****************************
1.python3 manage.py makemigrations
# 将操作记录到小本本上(migrations文件夹内) 不能真正的直接操作数据库
2.python3 manage.py migrate
# 将操作真正的同步到数据库中
"""只要在models中书写了跟数据库相关的代码 就必须要重新执行上述两条命令"""

# pycharm简单快捷输入
tools
run manage.py task
自动提示
*******************************************************************

 

 

 

 

 

 

 

 

 

 

# 字段的增删改查
# 增
1.终端里面自己加默认值
2.null=True
3.default='666'

# 删
注释代码执行两条命令 (然后收拾行李跑路走人)
# 在操作models.py中的代码的时候一定要细心

# 改
修改代码执行两条命令

# 数据的增查
# 增
from app01 import models
1.create()
user_obj = models.UserInfo.objects.create(**kwargs)
# 改方法有一个返回值 就是当前创建的数据对象本身
2.对象.save()
# 先生成一个类对象
user_obj = models.User(**kwargs)
# 对象调用save方法
user_obj.save()

# 查
1.filter() # where
res = models.UserInfo.objects.filter(**kwargs)
"""
返回的结果是一个querySet对象 你可以把它看成是一个列表套数据对象
[数据对象1,数据对象2...]

支持索引和切片操作 但是不支持负数 并且不推荐你使用索引

.first()方法

filter括号内可以写多个参数 查询的时候默认是and关系
"""

 

标签:映射,models,创建,数据库,py,django,对象,orm
From: https://www.cnblogs.com/97zs/p/17844809.html

相关文章

  • pycharm链接数据库 django链接MySQL
    #找到pycharmdatabase选项(三个地方查找)#选取对应的数据库下载对应的驱动"""明明链接上了数据库但是看不到表无法操作这个时候你只需要将刚刚创建的链接删除重新链接一次即可"""  #1.配置文件中配置DATABASES={'default':{'ENGINE':'django.db.back......
  • 为什么 Django 后台管理系统那么“丑”?
    哈喽大家好,我是咸鱼相信使用过Django的小伙伴都知道Django有一个默认的后台管理系统——DjangoAdmin它的UI很多年都没有发生过变化,现在看来显得有些“过时且简陋”那为什么Django的维护者却不去优化一下呢?原文作者去询问了多位维护者了解了其历史和”为什么这么设计......
  • 请求扩展,蓝图 , flask-session,数据库连接池,wtforms ,flask-script,信号,flask-cache
    1请求扩展......
  • docker部署django项目
    docker部署django项目在你项目路径下:requirement.txt,Dockerfile,uwsgi.iniDockerfileFROMpython:3.6MAINTAINERtigerEXPOSE8080ADD./requirement.txt/home/RUNpipinstall-r/home/requirement.txt-ihttps://pypi.douban.com/simple/RUNpipinstalluwsgi-iht......
  • go form表单数据处理
    每日一库:表单数据处理原创 孟斯特 孟斯特 2023-11-2010:00 发表于北京收录于合集#每日一库38个#Golang91个在Go语言中,处理HTTP请求中的表单数据是一项常见任务。github.com/go-playground/form/v4 是一个强大而灵活的库,用于轻松地在Go语言中处理表单数......
  • C# Winform 跨线程调用窗体
    还是用委托的方式。publicpartialclassForm1:Form{publicForm1(){InitializeComponent();}privateForm2form2;privatevoidShowForm2(){Actionaction=Show_;Invoke(action);}privatevoidSh......
  • 【Django使用】django经验md文档10大模块。第4期:Django数据库增删改查
    Django的主要目的是简便、快速的开发数据库驱动的网站。它强调代码复用,多个组件可以很方便的以"插件"形式服务于整个框架,Django有许多功能强大的第三方插件,你甚至可以很方便的开发出自己的工具包。这使得Django具有很强的可扩展性。它还强调快速开发和DRY(DoNotRepeatYourself)原......
  • .NET8.0 AOT 经验分享 - 专项测试各大 ORM 是否支持
    AOT特点发布和部署本机AOT应用具有以下优势:最大程度减少磁盘占用空间:使用本机AOT发布时,将生成一个可执行文件,其中仅包含支持程序所需的外部依赖项的代码。减小的可执行文件大小可能会导致:较小的容器映像,例如在容器化部署方案中。缩短了较小映像的部署时间。缩短启动......
  • 【Django-DRF用法】多年积累md笔记,第(4)篇:Django-DRF反序列化详解
    本文从分析现在流行的前后端分离Web应用模式说起,然后介绍如何设计RESTAPI,通过使用Django来实现一个RESTAPI为例,明确后端开发RESTAPI要做的最核心工作,然后介绍DjangoRESTframework能帮助我们简化开发RESTAPI的工作。全套DRF笔记直接地址:请移步这里共5章,24子模块,总计1......
  • django中间件处理返回数据
    django中间件处理返回数据统一接口返回数据格式的时候,每个视图都需要返回JsonResponse对象,比较麻烦,因此增加中间件处理视图返回的结果。fromdjango.http.responseimportJsonResponse,HttpResponseBasecode_msg_map={0:'ok',1:'Theargsmissing.',1000......