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分割TXT文件成4K的TXT文件
May 23 Python
实例讲解Python中函数的调用与定义
Mar 14 Python
Python基础学习之常见的内建函数整理
Sep 06 Python
Python cookbook(数据结构与算法)在字典中将键映射到多个值上的方法
Feb 18 Python
python3+PyQt5实现自定义窗口部件Counters
Apr 20 Python
Python基于sklearn库的分类算法简单应用示例
Jul 09 Python
django从请求到响应的过程深入讲解
Aug 01 Python
Python中捕获键盘的方式详解
Mar 28 Python
pygame库实现移动底座弹球小游戏
Apr 14 Python
Tensorflow的梯度异步更新示例
Jan 23 Python
简单了解python列表和元组的区别
May 14 Python
基于PyTorch中view的用法说明
Mar 03 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
php中this关键字用法分析
2016/12/07 PHP
详解提高使用Java反射的效率方法
2019/04/29 PHP
javascript html 静态页面传参数
2009/04/10 Javascript
23个Javascript弹出窗口特效整理
2011/02/25 Javascript
JQuery为textarea添加maxlength属性并且兼容IE
2013/04/25 Javascript
jQuery scroll事件实现监控滚动条分页示例
2014/04/04 Javascript
浅谈JavaScript中定义变量时有无var声明的区别
2014/08/18 Javascript
推荐一个自己用的封装好的javascript插件
2015/01/29 Javascript
$.browser.msie 为空或不是对象问题的多种解决方法
2017/03/19 Javascript
JQuery 进入页面默认给已赋值的复选框打钩
2017/03/23 jQuery
jquery之基本选择器practice(实例讲解)
2017/09/30 jQuery
JS获取动态添加元素的方法详解
2019/07/31 Javascript
layui 根据后台数据动态创建下拉框并同时默认选中的实例
2019/09/02 Javascript
JavaScript多种滤镜算法实现代码实例
2019/12/10 Javascript
JavaScript命令模式原理与用法实例详解
2020/03/10 Javascript
[14:03]2017DOTA2亚洲邀请赛开幕式:12神兵演绎水墨中华
2017/04/01 DOTA
[28:05]完美世界DOTA2联赛循环赛Inki vs DeMonsTer 第一场 10月30日
2020/10/31 DOTA
python抓取网页图片并放到指定文件夹
2014/04/24 Python
pytorch训练imagenet分类的方法
2018/07/27 Python
Python 利用scrapy爬虫通过短短50行代码下载整站短视频
2018/10/29 Python
python爬虫的一个常见简单js反爬详解
2019/07/09 Python
Python完成哈夫曼树编码过程及原理详解
2019/07/29 Python
python实现图片插入文字
2019/11/26 Python
css3的focus-within选择器的使用
2020/05/11 HTML / CSS
CSS3自定义滚动条样式 ::webkit-scrollbar的示例代码详解
2020/06/01 HTML / CSS
随机分配座位,共50个学生,使学号相邻的同学座位不能相邻
2014/01/18 面试题
服务员自我评价
2014/01/25 职场文书
信息与计算科学专业推荐信
2014/02/23 职场文书
党课知识竞赛主持词
2014/04/01 职场文书
学校志愿者活动总结
2014/06/27 职场文书
2015年见习期工作总结
2014/12/12 职场文书
自我工作评价范文
2015/03/06 职场文书
《家庭教育》读后感3篇
2019/12/18 职场文书
Redis源码阅读:Redis字符串SDS详解
2021/07/15 Redis
Pandas 稀疏数据结构的实现
2021/07/25 Python
Python采集壁纸并实现炫轮播
2022/04/30 Python