要想在一个另外的py文件中操作django,可以使用如下的代码

import os
os.environ.setdefault("DJANGO_SETTINGS_MODULE",'mysite.settings') #mysite用的是自己的project
import django
django.setup() from app01 import models #app01是项目名

基本操作

方法 解释
get() 获取指定条件的对象,在views.py里面有且只能有一个,否则报错
all() 获取所有对象
filter() 获取满足条件的所有对象 ---》对象列表
exclude() 获取所有不满足条件的对象,也就是get()的取反
values() 括号内有参数就是获取指定字段的结果,不写就是显示所有字段
values_list() 区别于values,是以元组的形式来表示
order_by() 以某个字段来排列,- 是以降序排列
reverse() 对排列好的结果取反
distinct() 去重

models.Book.objects.all().values("price").distinct()
count() 计算结果的数量
first() 取出满足条件的第一个结果
last() 取出满足条件的最后一个结果
exists() 判断结果是否存在
 delete()  删除记录

models.Book.objects.filter(price__lte=100).delete()
 update()  修改记录

models.Book.objects.filter(title__startswith="py").update(price=120)

下面是举例:

首先我们设置打印格式:

class User(models.Model):
id=models.AutoField(primary_key=True)
name=models.CharField(max_length=32,db_column='user',verbose_name='姓名')
age=models.IntegerField(verbose_name='年龄')
birth=models.DateTimeField(auto_now=True,null=True) def __str__(self):
return "<User:id-{} name-{}>".format(self.id,self.name) class Meta:
#数据库的表面修改,自定义
db_table="user" #admin中显示的表名称
verbose_name='个人信息' #在admin中Site administration显示
verbose_name_plural='所有用户信息'

下面是一些双下滑线的操作命令:

__gt=     大于某个数

__lt=     小于某个数

__lte=    小于等于某个数

__in=[]    在某些数字中

__range=[1,3]  在一和三之间

__contain=    包含

__icontain=    包含忽略大小写

__year=       某个时间字段中的年

__startwith  endswith  以什么开始,以什么结尾

举例

ret1=models.User.objects.filter(id__gt=1)
# <QuerySet [<User: <User:id-2 name-he>>, <User: <User:id-3 name-ren>>, <User: <User:id-4 name-wo>>]>
print(ret1) #查询在某个区间的结果,可以放入不在数据库里面的id
ret2=models.User.objects.filter(id__in=[1,2,4,100])
print(ret2) #查询在某个范围的结果
ret3=models.User.objects.filter(id__range=[1,3])
print(ret3) #包含
ret4=models.User.objects.filter(name__contains='e')
print(ret4) #忽略大小写,在sqlite数据库里面和contains是一样的,可以使用mysql验证
ret5=models.User.objects.filter(name__icontains='e')
print(ret5) #查询字段birth的时间中year是2018
ret6=models.User.objects.filter(birth__year='')
print(ret6)

django之 使用py文件操作django项目中的表的更多相关文章

  1. 背水一战 Windows 10 (91) - 文件系统: Application Data 中的文件操作, Application Data 中的“设置”操作, 通过 uri 引用 Application Data 中的媒体

    [源码下载] 背水一战 Windows 10 (91) - 文件系统: Application Data 中的文件操作, Application Data 中的“设置”操作, 通过 uri 引用 Ap ...

  2. 怎样将.h文件添加到项目中

    作为C++的初学者,在运行别人的程序时,第一个遇到的问题就是无法将程序中写到的.h文件包含到项目中来.下面来写一下处理方法.本文以easyx.h为例进行说明 首先右键你的工程 选择Properties ...

  3. django模型models.py文件内容理解

    首先,要理解这句话:模型是你的数据的唯一的.权威的信息源.它包含你所存储数据的必要字段和行为.通常,每个模型对应数据库中唯一的一张表 基础:每个模型都是django.db.models.Model的一 ...

  4. pycharm 当有多个.py文件在开发环境中时,如何操作可以保证运行当前面对自己的文件?

    Alt+shift+F10选择自己的py文件,执行就可以了.

  5. SpringBoot项目中,表单的验证操作

    在创建Springboot项目中,我们使用了表单验证操作,这一操作将极大地简化我们编程的开发 1.接收数据,以及验证 @PostMapping("/save") public Mo ...

  6. Django框架----models.py(数据库操作文件)

    利用一个中间模块 帮助我们连接数据库,写SQL语句,执行SQL语句,拿到结果 models.py 一.数据的对应关系 1. 类 ---> 表 2. 对象 ---> 数据行 3. 属性 -- ...

  7. 无状态的web应用(单个py文件的Django占位图片服务器)

    本文为作者原创,转载请注明出处(http://www.cnblogs.com/mar-q/)by 负赑屃 阅读本文建议了解Django框架的基本工作流程,了解WSGI应用,如果对以上不是很清楚,建议结 ...

  8. django项目中form表单和ajax的文件上传功能。

    form表单文件上传 路由 # from表单上传 path('formupload/',apply.formupload,name='formupload/'), 方法 # form表单文件上传 de ...

  9. 08 Django REST Framework 解决前后端分离项目中的跨域问题

    01-安装模块 pip install django-cors-headers 02-添加到INSTALL_APPS中 INSTALLED_APPS = ( ... 'corsheaders', .. ...

随机推荐

  1. web在线智能四则运算挑战赛

    本网站主要针对小学生,是一个智能在线学习和测试平台,平台有精美炫酷的网页,和可靠的数据,主要特色,自动出题.验证码机制.非空检测.正则匹配不同年级同学而出不同难度的题目,在线结算.时间控制,时间一到自 ...

  2. NPOI 操作excel之 将图片插入到指定位置;

    //新建类 重写Npoi流方法 public class NpoiMemoryStream : MemoryStream { public NpoiMemoryStream() { AllowClos ...

  3. java面向对象编程(一)-类与对象

    1.问题的提出      张老太养了两只猫猫:一只名字叫小白,今年3岁,白色.还有一只叫小花,今年100岁,花色.请编写一个程序,当用户输入小猫的名字时,就显示该猫的名字,年龄,颜色.如果用户输入的小 ...

  4. java学习笔记37(sql工具类:JDBCUtils)

    在之前的内容中,我们发现,当我们执行一条语句时,每新建一个方法,就要重新连接一次数据库,代码重复率很高,那么能不能把这些重复代码封装成一个类呢,我们学习方法时,就学习到方法就是为了提高代码的利用率,所 ...

  5. 剑指Offer 14. 链表中倒数第k个结点 (链表)

    题目描述 输入一个链表,输出该链表中倒数第k个结点. 题目地址 https://www.nowcoder.com/practice/529d3ae5a407492994ad2a246518148a?t ...

  6. 剑指Offer 39. 平衡二叉树 (二叉树)

    题目描述 输入一棵二叉树,判断该二叉树是否是平衡二叉树. 题目地址 https://www.nowcoder.com/practice/8b3b95850edb4115918ecebdf1b4d222 ...

  7. 剑指Offer 29. 最小的K个数 (其他)

    题目描述 输入n个整数,找出其中最小的K个数.例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4. 题目地址 https://www.nowcoder.com/prac ...

  8. 关于multi-index

    [转载请注明出处]http://www.cnblogs.com/mashiqi 2017/02/22 将$D^{\alpha}$和$\partial^{\alpha}$区别对待.$D^{\alpha} ...

  9. A Statistical Model for Scientific Readability-paper

    Authors: Luo SiCarnegie Mellon University, Pittsburgh, PA Jamie CallanCarnegie Mellon University, Pi ...

  10. 《DSP using MATLAB》Problem 7.9

    代码: %% ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ %% Output In ...