Django设置Postgresql的操作


Posted in Python onMay 14, 2020

这里假定Postgresql数据库已经装好。

首先安装依赖的包

$ sudo yum install python-devel postgresql-devel

如果使用virtualenv,先source一下virtualenv下的“ . bin/activate”,然后运行

$ pip install psycopg2

修改settings.py文件

DATABASES = {
 'default': {
 'ENGINE': 'django.db.backends.postgresql_psycopg2',
 'NAME': '...',
 'USER': '...',
 'PASSWORD': '...',
 'HOST': '127.0.0.1',
 'PORT': '5432',
 }
}

测试

python manage.py shell
>>> from django.db import connection
>>> cursor = connection.cursor

如果没有返回任何错误说明数据库连接成功。

补充知识:Django orm 常用查询筛选总结

本文主要列举一下django orm中的常用查询的筛选方法:

大于、大于等于

小于、小于等于

in

like

is null / is not null

不等于/不包含于

其他模糊查询

model:

class User(AbstractBaseUser, PermissionsMixin):
 uuid = ShortUUIDField(unique=True)
 username = models.CharField(max_length=100, db_index=True, unique=True, default='')
 schoolid = models.CharField(max_length=100, null=True, blank=True, default='')
 classid = models.CharField(max_length=100, null=True, blank=True, default='')
 fullname = models.CharField(max_length=50, default='', null=True, blank=True)
 email = models.EmailField(_('email address'), blank=True, null=True)
 age = models.SmallIntegerField(default=0)

大于、大于等于

__gt 大于

__gte 大于等于

User.objects.filter(age__gt=10) // 查询年龄大于10岁的用户
User.objects.filter(age__gte=10) // 查询年龄大于等于10岁的用户

小于、小于等于

__lt 小于

__lte 小于等于

User.objects.filter(age__lt=10) // 查询年龄小于10岁的用户
User.objects.filter(age__lte=10) // 查询年龄小于等于10岁的用户

in

__in

查询年龄在某一范围的用户

User.objects.filter(age__in=[10, 20, 30])

like

__exact 精确等于 like 'aaa'

__iexact 精确等于 忽略大小写 ilike 'aaa'

__contains 包含 like '%aaa%'

__icontains 包含 忽略大小写 ilike '%aaa%',但是对于sqlite来说,contains的作用效果等同于icontains。

is null / is not null

__isnull 判空

User.objects.filter(username__isnull=True) // 查询用户名为空的用户
User.objects.filter(username__isnull=False) // 查询用户名不为空的用户

不等于/不包含于

User.objects.filter().exclude(age=10) // 查询年龄不为10的用户
User.objects.filter().exclude(age__in=[10, 20]) // 查询年龄不为在 [10, 20] 的用户

其他模糊查询

__startswith 以…开头
__istartswith 以…开头 忽略大小写
__endswith 以…结尾
__iendswith 以…结尾,忽略大小写
__range 在…范围内
__year 日期字段的年份
__month 日期字段的月份
__day 日期字段的日

以上这篇Django设置Postgresql的操作就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python写的英文字符大小写转换代码示例
Mar 06 Python
Python使用matplotlib实现在坐标系中画一个矩形的方法
May 20 Python
python 写的一个爬虫程序源码
Feb 28 Python
详解Python中的Numpy、SciPy、MatPlotLib安装与配置
Nov 17 Python
Python实现一个Git日志统计分析的小工具
Dec 14 Python
Python cookbook(数据结构与算法)将名称映射到序列元素中的方法
Mar 22 Python
解决pycharm每次新建项目都要重新安装一些第三方库的问题
Jan 17 Python
详解如何减少python内存的消耗
Aug 09 Python
关于Python内存分配时的小秘密分享
Sep 05 Python
PyTorch 随机数生成占用 CPU 过高的解决方法
Jan 13 Python
使用python从三个角度解决josephus问题的方法
Mar 27 Python
使用openCV去除文字中乱入的线条实例
Jun 02 Python
numpy矩阵数值太多不能全部显示的解决
May 14 #Python
使用python采集Excel表中某一格数据
May 14 #Python
django 模版关闭转义方式
May 14 #Python
Django表单提交后实现获取相同name的不同value值
May 14 #Python
django模板获取list中指定索引的值方式
May 14 #Python
Django admin管理工具TabularInline类用法详解
May 14 #Python
django创建超级用户时指定添加其它字段方式
May 14 #Python
You might like
dedecms系统的广告设置代码 基础版本
2010/04/09 PHP
采用PHP函数memory_get_usage获取PHP内存清耗量的方法
2011/12/06 PHP
PHP之APC缓存详细介绍 apc模块安装
2014/01/13 PHP
PHP中使用smarty生成静态文件的例子
2014/04/24 PHP
PHP实现微信发红包程序
2015/08/24 PHP
ThinkPHP5与单元测试PHPUnit使用详解
2020/02/23 PHP
jQuery+CSS实现菜单滑动伸展收缩(仿淘宝)
2013/03/22 Javascript
JQuery 控制内容长度超出规定长度显示省略号
2014/05/23 Javascript
Javscript调用iframe框架页面中函数的方法
2014/11/01 Javascript
js代码验证手机号码和电话号码是否合法
2015/07/30 Javascript
在JavaScript的jQuery库中操作AJAX的方法讲解
2015/08/15 Javascript
Vue获取DOM元素样式和样式更改示例
2017/03/07 Javascript
完美实现js选项卡切换效果(二)
2017/03/08 Javascript
从零开始学习Node.js系列教程二:文本提交与显示方法
2017/04/13 Javascript
javascript 中null和undefined区分和比较
2017/04/19 Javascript
echarts鼠标覆盖高亮显示节点及关系名称详解
2018/03/17 Javascript
Nodejs Express 通过log4js写日志到Logstash(ELK)
2018/08/30 NodeJs
nodejs 使用nodejs-websocket模块实现点对点实时通讯
2018/11/28 NodeJs
深入了解JavaScript词法作用域
2020/07/29 Javascript
JavaScript TAB栏切换效果的示例
2020/11/05 Javascript
python获取远程图片大小和尺寸的方法
2015/03/26 Python
Python基础篇之初识Python必看攻略
2016/06/23 Python
Python处理中文标点符号大集合
2018/05/14 Python
win7下python3.6安装配置方法图文教程
2018/07/31 Python
pandas 缺失值与空值处理的实现方法
2019/10/12 Python
pytorch梯度剪裁方式
2020/02/04 Python
南威尔士家居商店:Leekes
2016/10/25 全球购物
伦敦一家领先的精品零售商:IRIS Fashion
2019/05/24 全球购物
安德玛比利时官网:Under Armour比利时
2019/08/28 全球购物
成教自我鉴定
2013/10/27 职场文书
物流管理专业自荐信
2014/06/23 职场文书
最美家庭活动方案
2014/08/31 职场文书
公司员工离职证明书
2014/10/04 职场文书
Nginx配置SSL证书出错解决方案
2021/03/31 Servers
详解thinkphp的Auth类认证
2021/05/28 PHP
css3新特性的应用示例分析
2022/03/16 HTML / CSS