
Django
moshanghuali
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Django中多个app放置同一文件夹中
实际项目中我们往往会有多个应用,这个时候常规生成的目录结构中多个app都在根目录,视觉上比较混乱。将多个app放置在一个文件夹中,使得目录结构更加清晰。主要方法:方法一:1、在pycharm中新建一个管理app的python package目录(例如apps)2、将存在的app用拖拽到apps目录下,此时会弹出对话框,取消勾选Search for references3、鼠标右击apps目录,选择mark directory as—-选择sources root4、在项目set原创 2021-11-12 17:45:06 · 1830 阅读 · 1 评论 -
drf使用分页功能,出现UnorderedObjectListWarning报错
UnorderedObjectListWarning: Pagination may yield inconsistent results with an unordered object_list: <class 'myapp.models.Power'> QuerySet.paginator = self.django_paginator_class(queryset, page_size)原因是您没有进行排序。解决方法:(一)在设计model的时加上ordering...原创 2021-10-29 15:00:11 · 338 阅读 · 0 评论 -
DRF中DateTimeField输入输出时间格式化
DateTimeField(format=api_settings.DATETIME_FORMAT, input_formats=None, default_timezone=None)format: 格式化输出时间字符串,取值如下'%Y-%m-%d %H:%M:%S', # '2006-10-25 14:30:59' 输出'%Y-%m-%d %H:%M', # '2006-10-25 14:30' '%Y-%m-%d', # '2006-.原创 2021-10-03 17:59:36 · 1786 阅读 · 0 评论 -
Navicat连接mysql8.0报错!
mysql从8.0开始更改了数据库密码存储加密方式,由之前的mysql_native_password加密插件更改为caching_sha2_password。官方给出的理由是性能更好,更安全。但是很多数据库管理软件还没更上步伐,所以即使你用自己设置的密码也会出现连接不上。解决办法为更改加密规则即可:use mysql;alter user 'root'@'%' identified with mysql_native_password by "你设置的密码";flush priv原创 2021-09-05 23:05:08 · 211 阅读 · 0 评论 -
django+channels实现websocket(一)
channels中scope包含哪些内容假设当前请求url是 ws://127.0.0.1:8000/ws/chat/as/scope包含以下内容{'type': 'websocket','path': '/ws/chat/a/', 'raw_path': b'/ws/chat/a/', 'headers': [(b'host', b'127.0.0.1:8000'), (b'connection', b'Upgrade'), (b'pragma', b'no-..原创 2020-08-28 20:19:44 · 610 阅读 · 1 评论 -
Django使用原生SQL语句的两种方式
一、Manager.raw(raw_query,params=None,translations=None)此方法接受原始SQL查询,执行该查询,然后返回django.db.models.query.RawQuerySet实例。可以像普通QuerySet一样迭代此RawQuerySet实例以提供对象实例。例如:class Person(models.Model): fi...原创 2020-01-12 21:53:34 · 2872 阅读 · 0 评论 -
Django中聚合和分组查询以及F和Q
1 聚合aggregate()django中使用aggregate()方法来实现聚合操作,aggregate()是QuerySet的一个终止语句,即:它返回一个包含一些键值对的字典。键的名称是聚合值的标识符,值是计算出来的聚合值。键的名称是按照字段和聚合函数的名称自动生成出来的。常用的聚合函数有 Max | Min | Avg | Count | Sum。# 使用前需要导入...原创 2020-01-12 21:20:15 · 436 阅读 · 0 评论 -
Django中基于双下划线的跨表查询
django跨表查询一般有两种。1 基于对象的跨表查询方式,常用的是符号 .基于对象的跨表查询也分正向查询和反向查询。由主表查从表就是反向,由从表查主表就是正向。一般来说外建放在那个表中,哪个表就是从表。例如:class UserInfo(models.Model): username=models.CharField(max_length=32) pwd =...原创 2020-01-06 19:09:43 · 734 阅读 · 0 评论 -
Django中神奇的双下划线(单表查询)
单表查询中(常见)(1)xx__lt : 小于(2)xx__lte : 小于等于(3)Xx__gt、xx__gte : 大于、大于等于。(4)xx__in : 包含指定的内容。(5)xx__range: 指定范围内的查找, 相当于 mysql中的 between… and…(6)Xx__startswith、xx__endswith、xx__istartswith、xx__iend...原创 2020-01-04 22:45:52 · 294 阅读 · 0 评论 -
Django中model之间关系(一对多,一对一,多对多)
ForeignKey ForeignKey(to, on_delete, related_name=None, related_query_name=None, limit_choices_to=None, parent_link=False, to_field=None, db_constraint=True, **...原创 2020-01-04 21:54:13 · 5114 阅读 · 0 评论 -
Django中model查询
model的增,删,改,查四个操作。from django.db import modelsclass Blog(models.Model): name = models.CharField(max_length=100) tagline = models.TextField() def __str__(self): return self.na...原创 2019-12-30 21:13:29 · 545 阅读 · 1 评论 -
Django中model类的Meta选项
Django模型类的Meta是一个内部类,它用于定义一些Django模型类的行为特性。而可用的选项大致包含以下几类:class UserInfo(models.Model): username = models.CharField(max_length=32,unique=True) class meta: #相关选项...原创 2019-12-29 15:04:03 · 426 阅读 · 0 评论 -
Django中字段属性
null默认为false。若为True,Django会将None数据类型以NULL形式存储在数据库中。python中没有null(none即相当于null)。注意:避免在CharField和TextField字段类型中设置null为True。否则,None和空字符串,都将以空白存储在数据库中。特殊情况下:当CharField字段属性unique=True并且blank=Tr...原创 2019-12-27 19:13:29 · 642 阅读 · 1 评论 -
django中字段类型(field type)
django中字段类型字段类型 说明 备注 AutoField 自增字段 如果不显示指定主键,django每次都会自动新建一个自增字段(并设置为主键) BigAutoField 类似AutoField 存储数字为只能为 1到9223372036854775807 BigIntegerField 类似IntegerField -9...原创 2019-12-27 16:58:38 · 658 阅读 · 0 评论