随笔分类 - 17-Django
摘要:本文运行流程介绍来自jumpserver版本号:v2.23.2 入口文件 run_server.py run_server中通过subprocess.call,用python3运行了同级目录下jms,并传入参数 start all,进入jms.py 首先配置BASE_DIR和APP_DIR全局变量,
阅读全文
摘要:工作上会经常用到不熟悉的第三方模块,大多数时候会选择看文档、百度谷歌、看源码等形式去把它用起来。几年工作经验下来源码看的不少了,但当面试被问到django的生命周期时,只能浅谈根据wsgi协议会走application,后续如何返回response一概不知。于是抽时间读了读django的源码。 一、
阅读全文
摘要:一、样式: django-haystack在utils模块中封装了HighHighlighter用于配置搜索结果的样式展示。想要更改结果的样式,可以写个子类重写相应的方法达到效果 1.关键字高亮: HighHighlighter为模版文件提供了搜索关键字相关的配置信息,只需在模版文件search.h
阅读全文
摘要:业务背景: 最近在写一个个人博客网站,文章分类是一个自关联的两层分类。希望在点开分类时,显示一级分类、一级分类下的所有二级分类以及每个二级分类有多少个文章。最简单办法就是关联查询,查询出所有二级分类,再根据二级分类去查询二级分类的文章的个数。但是一想点一下分类就进行N次的关联查询,即使采用缓存,频繁
阅读全文
摘要:Django中封装了分页模块,定义了两个类分别是Paginator和Page。虽然可以满足一般的需求,但是稍想添加点新的功能就显得鸡肋,而且创建paginator类对象时需要传人所有的数据对象(由于django的惰性查询所以适用django),没有可移植性。 下面先在原分类模块基础上另外封装两个功能
阅读全文
摘要:Django中的常用模块导入 from django.shortcuts import render,redirect # 模板渲染 from django.urls import reverse # url反向解析 from django.http import JsonResponse,Http
阅读全文
摘要:实际开发过程中,全文检索后的页面内容,除了搜索后的内容块外,别的内容块往往需要更多的数据库中的内容。比如一个购物网站,除了搜索后的产品内容外,往往还需要种类信息、变化的筛选信息等,这些都是需要从数据库中取出来的。 采用前后端分离的应用模式,这个问题似乎不是问题。 但是如果采用前后端不分离的应用模式,
阅读全文
摘要:一、富文本编辑器 借助富文本编辑器,网站的编辑人员能够像使用offfice一样编写出漂亮的、所见即所得的页面。此处以tinymce为例,其它富文本编辑器的使用也是类似的。 在虚拟环境中安装包。 pip install django-tinymce==2.6.0 安装完成后,可以使用在Admin管理中
阅读全文
摘要:关联查询有两种方式:一种是创建类对象,通过类对象查询。另外一种是通过模型类查询。两种方式单独看没问题,放一起看就混了。这边我来帮大家理一理 首先:一类和多类要理清:在数据库中,一类中的一条记录对应着多类中的多条记录,多类中保存着可以知道每一条记录对应的一类记录是什么 的关联属性。 第一种方式:类对象
阅读全文
摘要:django开发中,如果说之前的迁移文件不小心删掉了或者换设备了(总之就是不好去找回之前的迁移文件了),此时想要在在数据库中加一些表,那么就需要做以下几步处理了: 1.首先就是在应用模型类中添加模型类(这是必须也是简单的,略) 2.由于之前迁移过,在数据库中会有一张表(名为:django_migra
阅读全文
摘要:相比Django1.X中间件,Django2.X中的中间件使用方法做了修改。 1.定义中间件需要继承MiddlewareMixin类: from django.utils.deprecation import MiddlewareMixin class 中间件类名(MiddlewareMixin):
阅读全文
摘要:一、管理器: 应用场景:1.改变查询的结果集 2.添加额外的方法 1 class BookInfoManger(models.Manager): 2 """自定义图示模型管理类""" 3 # 改变查询的结果集 4 def all(self): 5 # 1.调用父类的all方法,获取所有数据 6 bo
阅读全文
摘要:一、前言: Django查询数据库中的信息,实质是将SQL语句封装成了其内置的方法。打开mysql日志文件可以看到django每次执行查询命令时对应的sql语句。 查看mysql日志的方法: 1.修改mysql配置文件,去除68,69行的注释。文件路径(/etc/mysql/mysql.conf.d
阅读全文
摘要:1.模型类属性命名限制: 1)不能是python的保留关键字。 2)不允许使用连续的下划线,这是由django的查询方式决定的。 3)定义属性时需要指定字段类型,通过字段类型的参数指定选项,语法如下: 属性名=models.字段类型(选项) 2.字段类型,使用时需要引入django.db.model
阅读全文

浙公网安备 33010602011771号