Django模型系统(一)

装饰器补充

django模型系统

一,数据库的链接配置

二,Django的ORM简介

三,模型的创建与激活

四,数据的增删改查

一,数据库的链接配置

django  链接mysql的配置流程:

  -安装pymysql ——   pip  install  pymysql

  -创建数据库用户

    -有创建数据库权限的用户

  -创建数据库

    create database mysite; (创建需要的数据库)

  -修改配置

  -修改项目文件(和settings.py文件所在的目录)下

  __init__.py文件

  -设置时区  TIME ZONE = ‘Asia/ShangHai’   #北京时间

二,Django的ORM简介

三,模型的创建与激活

创建模型:

  -创建Student的模型,代表学生

  verbose_name 人类可读的时间

  总结:

  1,每一个模型都是django.db.models.Model的子类

  2,类变量 表示模型中的数据库字段

  3,每一个字段由一个字段类的实例表示

激活模型:

  1,在项目中注册app

  2,运行数据库迁移命令(项目根目录下)

    python mange.py makemigrations teacher(应用名:teacher,不加全部迁移)

  告诉django,我们做了哪些数据库的更改

  迁移

  sqlmigrete 从迁移获取sql语句

--
-- Create model Student 
--
CREATE TABLE `teacher_student` (

`id` integer AUTO_INCREMENT NOT NULL PRIMARY KEY,

`name` varchar(20) NOT NULL,

`age` smallint NOT NULL,

`sex` smallint NOT NULL,

`qq` varchar(20) NOT NULL,

`phone` varchar(20) NOT NULL,

`c_time` datetime(6) NOT NULL);
COMMIT;

3, 运行migrate命令,使迁移生效

  python manage.py migrate

# 表名 appname 模型name.lower  (表名是app下划线加上模型的小写)

四,数据的增删改查

  -工具 django shell  调试工具

  命令:pythone manage.py shell

  创建:pip install ipython  (补全功能)

增加数据方法:

  1,Student.objects.create(name=‘魏国‘, age=13)

  2,s1 = Student(name=‘孟杰’, age=25, qq=‘123456‘)

3,

  s2 = Student()

  s2.name = ‘心蓝‘

  s2.age = 18

  s2.save()

4, s=Student.objects.get_or_create(name=‘心蓝‘)  

In [11]: s
Out[11]: (<Student: 心蓝-18>, False)   ***查就是False;创建成功就是True

In [12]: s[0]
Out[12]: <Student: 心蓝-18>

In [13]: s[0].id
Out[13]: 1

查询数据

Student.objects.all()   #查询所有

res = Student.objects.all()

res

print(res[1:2].query)   #切片

Student.objects.get(name=‘心蓝‘)   #查询

Student.objects.get(pk=1)   #pk替代主键

res = Student.objects.filter(sex=1)  #查询

修改数据

s.age = 16   #通过对象数据进行赋值,进行修改

s.save()  #保存

Student.objects.filter(name=‘心蓝‘).update(age=18)   #修改多条数据

Student.objects.filter(sex=1).delete()    #删除多条数据

原文地址:https://www.cnblogs.com/wdty/p/10425412.html

时间: 2024-11-04 00:51:34

Django模型系统(一)的相关文章

django模型系统(二)

django模型系统(二) 常用查询 每一个django模型类,都有一个默认的管理器,objects QuerySet表示数据库中对象的列表.他可以有0到国歌过滤器.过滤器通过给定参数,缩小查询范围(filter). QuerySet等同与select语句,过滤器等同于一个限制字句,比如where.limit 使用.query可查看对应的SQL语句 all()获取所有 name.objects.all()queryset 获取第一条 name.objects.first()返回的是对象 获取最后

django模型系统二

常用查询及表关系的实现 1.常用查询 每一个django模型类,都有一个默认的管理器 objects QuerySet表示数据库中对象的列表,它可以有0到多个过滤器.过滤器通过给定参数,缩小查询范围. QuerySet等同于select语句,过滤器是一个限制子句,比如where,limit. all() 获取所有 Student.objects.all() #返回的是queryset 获取第一条 Student.objects.first() #返回的是对象 获取最后一条 Student.obj

Django 模型系统(model)&amp;ORM--进阶

QuerySet 可切片 使用Python 的切片语法来限制查询集记录的数目 .它等同于SQL 的LIMIT 和OFFSET 子句. >>> Entry.objects.all()[:5] # (LIMIT 5) >>> Entry.objects.all()[5:10] # (OFFSET 5 LIMIT 5) 不支持负的索引(例如Entry.objects.all()[-1]).通常,查询集 的切片返回一个新的查询集 —— 它不会执行查询. 可迭代 articleL

08 django模型系统(一)

课前补充:1.虚拟环境的账号不要用root账号链接虚拟机 1.数据库的连接配置django 连接mysql的配置流程: - 进入虚拟环境,安装mysql pymysql pip install pymysql - 创建数据库用户 有创建数据库权限的用户 例如:创建一个管理员用户crm账号,密码为crm@python CREATE USER 'crm'@'%'IDENTIFIED BY 'crm@python'; 给这个用户授予所有远程访问,这个用户主要用于管理整个数据库,备份,还原等操作. GR

B django模型系统(后续1)

1.数据库的链接配置 django里mysql的连接流程 安装--pip install  pymysql 创建数据库用户 有创建数据库的权限的用户 创建数据库 crm 修改配置  setings DATABASES = { 'default': { 'ENGINE': 'django.db.backends.mysql', 'NAME': 'crm', 'USER':'root', 'PASSWORD':'qwe123', 'HOST':'127.0.0.1', 'PORT':'3306',

Django 模型系统(model)&amp;ORM--基础

ORM 映射关系: 类 ---> 表 属性 ---> 字段 对象 --->一条数据 创建表(建立模型) 实例:我们来假定下面这些概念,字段和关系 作者模型:一个作者有姓名和年龄. 作者详细模型:把作者的详情放到详情表,包含生日,手机号,家庭住址等信息.作者详情模型和作者模型之间是一对一的关系(one-to-one) 出版商模型:出版商有名称,所在城市以及email. 书籍模型: 书籍有书名和出版日期,一本书可能会有多个作者,一个作者也可以写多本书,所以作者和书籍的关系就是多对多的关联关系

django模型系统(三)--多对多,一对一以及跨表查询

-Many-to-Many*** 指定了中间表,add,remove,set 都不能用,必须用中间表 两端都可以自动获得另一端的自动API访问.跟一对多的反向访问类似.但是使用的是本字段的字段名 In [112]: Course.objects.create(name='python全栈') Out[112]: <Course: python全栈> In [113]: Course.objects.create(name='python全套') Out[113]: <Course: py

Django模型

数据库表的设计 设计系统表 Django提供完善的模型(model)层主要用来创建和存取数据,不需要我们直接对数据库操作. Django模型基础知识:每个模型是一个Python类,继承django.db.models.model类.该模型的每个属性表示一个数据库表字段.所有这一切,已经给你一个自动生成的数据库访问的API. 1.打开.../sign/models.py文件,完成表的创建 from django.db import models # Create your models here.

django认证系统

Django认证系统同时处理认证和授权.简单地讲,认证验证一个用户是否它们声称的那个人,授权决定一个通过了认证的用户被允许做什么.这里的词语"认证"同时指代这两项任务. 认证系统包含: 用户 权限:二元(是/否)标志指示一个用户是否可以做一个特定的任务. 组:对多个用户运用标签和权限的一种通用的方式. 一个可配置的密码哈希系统 用于登录用户或限制内容的表单和视图 一个可插拔的后台系统 使用: 位于django.contrib.auth,配置在settings.py中的 INSTALLE