
Django
文章平均质量分 70
Django学习到实战项目
菲宇
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
Django响应式图像库django-pictures
默认为1200px,可以通过PICTURES["CONTAINER_WIDTH"]设置覆盖此设置。还可以向序列化程序提供可选的GET参数, 以指定要包含在响应中的纵横比和断点。指定图像的纵横比,图像将被裁剪到指定的纵横比。可以定义自己的断点,它们应该与您的CSS库中使用的断点相同。响应可以限制为单个纵横比和图像源,如下所示,向字段提供aspect_ratio和image_source参数。响应式设计的网页图像,就是响应式图像。如果未在模板中指定纵横比或“无”,则图像将以文件的原始纵横比提供。原创 2024-02-02 16:36:41 · 897 阅读 · 0 评论 -
在Django Admin添加快捷方式django-admin-shortcuts
count_new是项目中返回有趣内容的函数的路径(例如所有产品的计数或所有挂单的计数)。test_func是项目中返回布尔值的函数的路径。要更改漂亮的图标,可以指定ADMIN_SHORTCUTS_CLASS_MAPPINGS的引用。title是快捷方式的标题快捷方式。has_perms是表示显示快捷方式所需的内置管理员权限的字符串列表。show_on_all_pages显示所有管理页面上的快捷方式。app_name是将用于 URL 反转的管理应用的名称。url_name可选是将覆盖的直接链接url。原创 2024-02-02 16:33:11 · 793 阅读 · 0 评论 -
Django日志logging的配置和自定义添加
日志是一种可以追踪某些软件运行时所发生事件的方法。开发者可以在代码中调用日志记录相关的方法来表明发生了某些事情。一个事件可以用一个可包含可选变量数据的消息来描述,事件有严重性级别(level)。原创 2023-01-07 23:12:29 · 699 阅读 · 1 评论 -
Django 判断访问来源是PC端还是手机端
pc_or_mobile.py# 判断访问来源是pc端还是手机端import redef judge_pc_or_mobile(ua): """ :param ua: 访问来源头信息中的User-Agent字段内容 :return: """ factor = ua is_mobile = False _long_matches = r'googlebot-mobile|android|avantgo|blackberry|blazer.原创 2022-03-24 10:21:45 · 1250 阅读 · 1 评论 -
Django 聚合与查询集API实现侧边栏
本文从Django官方文档总结而来,将聚合的主要用法和查询集的常见方法做一归纳。聚合1. 聚合的产生来源于django数据库查询,通常我们使用django查询来完成增删查改,但是有时候需要更复杂的方法才能完成对数据的提取、筛选、更改,所以需要一组对象聚合来完成这种操作。模型举例如下:from django.db import modelsclass Author(models.M...原创 2020-03-18 23:22:32 · 452 阅读 · 0 评论 -
【Django】TypeError: int() argument must be a string, a bytes-like object or a number...
TypeError: int() argument must be a string, a bytes-like object or a number, not 'datetime.datetime'项目创建了两个模型,分别是Platform(平台类型)、和Project(项目名)。其中项目名中有外键,但是在创建模型的时候忘记添加外键了,之后添加外键之后,运行migrate总是报标题上的错,找...转载 2019-10-31 16:02:37 · 6117 阅读 · 1 评论 -
django-simpleui 后台主题框架安装使用
一、简介simpleui 是一个基于django后台管理的主题,主要是为了美化和简化django内置的后台管理界面。 内置28款流行的主题 pip闪电安装100%兼容原生admin无需修改代码 多标签页面,各个模块更加清晰明了 配置简单,极速上手,在settings.py中加入simpleui后启动立即生效,效率提升 100%!让后端开发得心应手。...原创 2019-10-29 08:51:59 · 17447 阅读 · 6 评论 -
Django 后台自定义表单控件
在 django 中我们可以在 admin.py 中添加 ModelAdmin,这样就能很方便地在后台进行增删改查的操作。然而,对应 Model 生成的表单,并不友好,我们希望能像前端开发一样做出各种类型的控件,这就得对其后台的表单进行自定义。其实 django 已经为我们提供了一些可用的表单控件,比如:多选框、单选按钮等,下面就以单选按钮为例:# forms.pyfrom djang...转载 2019-07-29 08:36:05 · 1857 阅读 · 0 评论 -
Django使用Markdown排版、语法高亮和生成目录
class Entry(models.Model): title = models.CharField('文章标题',max_length=128) author = models.ForeignKey(User,verbose_name='作者',on_delete=models.CASCADE) img = models.ImageField(upload_to='b...原创 2019-10-18 09:28:47 · 786 阅读 · 0 评论 -
Django使用uwsgi和nginx修改代码自动重启
在默认设置下,uwsgi本身不会立即加载修改后的文件。nginx + uwsgi + django 部署的站点,如果修改了py代码,需要重新启动 uwsgi 才会生效。如果有需要 Django 代码改动时立即生效,可以在启动 uwsgi 的 ini 的配置文件里加入参数py-autoreload = 1( 写在 ini 配置文件中,记得一定要 = 1,否则不生效)。py-autoreloa...原创 2019-10-18 09:28:07 · 3487 阅读 · 0 评论 -
Django之model查select的用法
基本操作# 获取所有数据,对应SQL:select * from UserUser.objects.all()# 匹配,对应SQL:select * from User where name = '运维咖啡吧'User.objects.filter(name='运维咖啡吧')# 不匹配,对应SQL:select * from User where name != '运维咖啡吧'...原创 2019-10-17 20:01:15 · 1062 阅读 · 0 评论 -
Django之model改update用法介绍
model改update常规用法假如我们的表结构是这样的class User(models.Model): username = models.CharField(max_length=255, unique=True, verbose_name='用户名') is_active = models.BooleanField(default=False, verbose_n...原创 2019-10-17 19:59:14 · 19925 阅读 · 4 评论 -
Django默认权限机制及使用
当Django配置文件中的INSTALL_APPS包含了django.contrib.auth时,就启用了默认的权限系统,提供了为用户或组分配权限的方法1、 默认的权限系统是基于表的控制,权限最小粒度是表假如有一个Blog表,我们可以赋予用户或组对Blog表有delete的权限,那么用户或组成员就可以删除全部Blog,是不能控制用户只能删除自己创建的blog的如果希望用户只能删除自己创建的...原创 2019-10-17 19:34:55 · 937 阅读 · 0 评论 -
Django之Model操作数据库详解
一、django ORM简介O(objects):类和对象。R(Relation):关系,关系数据库中的表格。M(Mapping):映射。Django ORM框架的功能:建立模型类和表之间的对应关系,允许我们通过面向对象的方式来操作数据库。 根据设计的模型类生成数据库中的表格。 通过方便的配置就可以进行数据库的切换。二、 数据库的配置Django可以配置使用sqlite3,m...原创 2018-04-14 13:13:01 · 6475 阅读 · 1 评论 -
Django的Modelform组件
通过名字可以看出,这个组件的功能就是把model和form组合起来。先举个例子:比如数据库中有一张学生表,字段有姓名,年龄,爱好,邮箱,电话,住址,注册时间等信息,现在让你写一个创建学生的页面,你该怎么写?首先会在前端罗列这些字段,让用户填写,然后后台逐个接收用户的输入,创建一个新的学生对象,保存。然而过程中未合法性验证,我们需要在前端判断用户输入是否合法,比如姓名必须在多少字符以内,电话号码...原创 2018-04-14 13:13:42 · 3110 阅读 · 0 评论 -
Django快捷函数
包 django.shortcuts 收集助手函数和“跨”多级mvc的类,换句话说,为了方便起见,这些函数/类引入受控耦合。render()render(request, template_name, context=None, content_type=None, status=None, using=None)将给定的模板与给定的上下文字典组合在一起,并以渲染的文本返回一个 Htt...原创 2018-04-16 22:32:26 · 1555 阅读 · 0 评论 -
Django之Model的Meta选项详解
Django默认生成的表名:应用名小写_模型类名小写可以通过在模型类中定义Meta类来修改表名:class Department(models.Model): """部门类""" name = models.CharField(max_length=20) create_date = models.DateField(auto_now_add=True) ...原创 2018-04-16 22:35:40 · 14254 阅读 · 0 评论 -
Django之Template介绍及日常应用
Django模板语言Django模板是一个简单的文本文档,或用Django模板语言标记的一个Python字符串。 某些结构是被模板引擎解释和识别的。主要的有变量和标签。模板是由context来进行渲染的。渲染的过程是用在context中找到的值来替换模板中相应的变量,并执行相关tags。其他的一切都原样输出。Django模板语言的语法包括四个结构。Django 项目可以配置一个或多个模板引...原创 2018-04-18 15:02:29 · 728 阅读 · 0 评论 -
Django的请求生命周期
1. 概述首先我们知道HTTP请求及服务端响应中传输的所有数据都是字符串.在Django中,当我们访问一个的url时,会通过路由匹配进入相应的html网页中.Django的请求生命周期是指当用户在浏览器上输入url到用户看到网页的这个时间段内,Django后台所发生的事情而Django的生命周期内到底发生了什么呢??1. 当用户在浏览器中输入url时,浏览器会生成请求头和请求体发给服务端请求头和...原创 2018-04-18 16:39:12 · 434 阅读 · 0 评论 -
Django转义总结:escape、autoescape、safe、mark_safe
何谓转义?就是把html语言的关键字过滤掉。例如,<div>就是html的关键字,如果要在html页面上呈现<div>,其源代码就必须是<div>转义其实就是把HTML代码给转换成HTML实体了!默认情况下,django自动为开发者提供escape功能,即在html代码render之前,先进行转义,然后再呈现出来。这样的话,我们如果想输出一个链...原创 2018-04-18 17:06:43 · 2416 阅读 · 1 评论 -
Django的中间件之一
分析Django的生命周期,我们知道所有的http请求都要经过Django的中间件.假如现在有一个需求,所有到达服务端的url请求都在系统中记录一条日志,该怎么做呢?Django的中间件的简介Django的中间件类似于linux中的管道符Django的中间件实质就是一个类,类之中有Django已经定义好了一些方法.每个http请求都会执行中间件中的一个或多个方法进入Dja...原创 2018-04-18 17:07:35 · 1159 阅读 · 0 评论 -
如何让django的model名和应用名显示为中文
在模型中加入class Meta即可class Staff(models.Model): name = models.CharField(null=True, blank=True, max_length=200) job = models.CharField(null=True, blank=True, max_length=200) def __str__(self):...原创 2018-04-30 09:59:35 · 2077 阅读 · 0 评论 -
Django路由控制URL详解
URL是Web服务的入口,用户通过浏览器发送过来的任何请求,都是发送到一个指定的URL地址,然后被响应。在Django项目中编写路由,就是向外暴露我们接收哪些URL的请求,除此之外的任何URL都不被处理,也没有返回。通俗地理解,不恰当的形容,URL路由是你的Web服务对外暴露的API。Django奉行DRY主义,提倡使用简洁、优雅的URL。1. 概述要设计应用程序的URL,可以创建一个非正...原创 2018-04-14 09:13:53 · 1450 阅读 · 0 评论 -
Django之QuerySet详解
从数据库中查询出来的结果一般是一个集合,这个集合叫做 QuerySet。一、QuerySet何时被提交在内部,创建、过滤、切片和传递一个QuerySet不会真实操作数据库,在你对查询集提交之前,不会发生任何实际的数据库操作。可以使用下列方法对QuerySet提交查询操作:迭代:QuerySet是可迭代的,在首次迭代查询集时执行实际的数据库查询。 例如, 下面的语句会将数据库中所有Ent...原创 2018-04-14 09:13:12 · 13045 阅读 · 0 评论 -
Django权限系统auth模块详解
认证系统authauth模块是Django提供的标准权限管理系统,可以提供用户身份认证, 用户组和权限管理。auth可以和admin模块配合使用, 快速建立网站的管理系统。auth模块from django.contrib import authdjango.contrib.auth中提供了许多方法,这里主要介绍其中的三个:1 authenticate() 提供了...原创 2018-04-13 22:25:53 · 7180 阅读 · 2 评论 -
Django之ForeignKey和ManyToManyField多表查询
多表查询是模型层的重要功能之一, Django提供了一套基于关联字段独特的解决方案.ForeignKey来自Django官方文档的模型示例:from django.db import modelsclass Blog(models.Model): name = models.CharField(max_length=100) tagline = models.Te...原创 2018-04-13 22:22:28 · 3508 阅读 · 0 评论 -
Django初识、应用创建、模板与静态文件配置、数据库连接
初识DjangoPython下有许多款不同的 Web 框架,Django是重量级选手中最有代表性的一位,许多成功的网站和APP都基于Django。Django采用了MVT的框架模式,即模型M,视图V和模版T。它最初是被开发来用于管理一些以新闻内容为主的网站的,即是CMS(内容管理系统)软件。Django的MTV模式 Model(模型):负责业务对象与数据库的对象(ORM)...原创 2018-04-11 22:21:33 · 1013 阅读 · 0 评论 -
MVC和MTV模式
著名的MVC模式:所谓MVC就是把web应用分为模型(M),控制器(C),视图(V)三层;他们之间以一种插件似的,松耦合的方式连接在一起。模型负责业务对象与数据库的对象(ORM),视图负责与用户的交互(页面),控制器(C)接受用户的输入调用模型和视图完成用户的请求。 Django的MTV模式本质上与MVC模式没有什么差别,也是各组件之间为了保持松耦合...原创 2018-04-13 22:29:14 · 1039 阅读 · 0 评论 -
Django Admin实现三级联动(省市区)
通过自定义Admin的模板文件实现省市区的三级联动.要求创建记录时,根据省>市>区的顺序选择依次显示对应数据.修改记录时默认显示已存在的数据.Modelclass Member(models.Model): name = models.CharField(max_length=100, verbose_name='姓名') province = mod...原创 2017-11-15 18:37:38 · 2097 阅读 · 1 评论 -
Django之Form组件详解、图片上传及定制
一、Django的Form功能生成HTML标签 验证用户数据(显示错误信息) HTML Form提交保留上次提交数据 初始化页面显示内容二、Django form 流程1、创建类,继承form.Form 2、页面根据类的对象自动创建html标签 3、提交,request.POST,封装到类的对象里,obj=UserInfo(request.POST) 4、用户输入是否合法,o...转载 2018-04-25 19:47:09 · 869 阅读 · 0 评论 -
Django之HttpRequest和HttpResponse
Django 是围绕着 Request 与 response 进行处理,也就是无外乎“求”与“应”。当请求一个页面时,Django 把请求的 metadata 数据包装成一个 HttpRequest 对象,然后 Django 加载合适的 view 方法,把这个 HttpRequest 对象作为第一个参数传给 view 方法。任何 view 方法都应该返回一个 HttpResponse 对象。H...转载 2019-05-26 14:35:25 · 1946 阅读 · 0 评论 -
Django 优秀资源大全
来源: https://github.com/haiiiiiyun/awesome-django-cnAwesome Django介绍Awesome-Django 是由 Roberto Rosario 发起和维护的 Django 资源列表。该列表收集了大量 Django 相关的优秀应用、项目等资源,方便了 Django 用户参考查阅。Django 优秀资源大全 则是依据 Awe...转载 2018-05-17 16:02:50 · 906 阅读 · 0 评论 -
Django开发常用30个软件包
Django是一款高级的Python Web框架,可以帮助开发者快速创建web应用。我们这里整理了30款Django开发中常用的软件包,学会使用它们可以节省大量开发时间,提高开发效率。下面一起来看下。认证和授权1. Python social auth一款社交账号认证/注册机制,支持Django、Flask、Webpy等在内的多个开发框架,提供了约50多个服务商的授权认证支持,如Googl...原创 2018-05-07 08:47:52 · 3183 阅读 · 1 评论 -
django-CMS的安装和工程启动
django CMS的安装(版本3.5.2) Django版本2.0.5,python版本为3.5.3一般而言,在自己的电脑上为每个项目配置自己的开发环境是很有必要的,应为每个项目需要用到的环境不尽相同甚至有所冲突,因此我们先利用python的虚拟环境管理工具建立django-cms 3.5.2 的开发环境,我使用的是python-virtualenv和virtualenvwrap...原创 2018-05-14 10:10:20 · 3309 阅读 · 0 评论 -
Django添加ckeditor富文本编辑器
源码 https://github.com/django-ckeditor/django-ckeditor通过pip安装。pip3 install django-ckeditorpip3 install Pillow在settings.py的INSTALLED_APPS里添加ckeditor和ckeditor_uploader两个应用。INSTALLED_APPS = ( ...原创 2018-04-29 22:13:12 · 1637 阅读 · 1 评论 -
Django之文件上传下载
一、Django处理文件上传File Uploads在文件上传期间,实际文件数据存储在request.FILES中。此字典中的每个条目都是UploadedFile对象(或子类) – 上传文件的简单包装器。UploadedFile对象是对Python file对象的一个简单封装,并带有Django特定的附加功能。需要表示文件的时候,Django内部会使用这个类。UploadedFile对象拥有下...原创 2019-05-26 14:35:11 · 5320 阅读 · 1 评论 -
Django使用普通表单、Form、以及modelForm操作数据库方式总结
Django使用普通表单、Form、以及modelForm操作数据库主要应用于增删该查的情景下,流程通用如下,只是实现方式不一样: 进入填写表单页面; 在表单页面填写信息,并提交; 表单数据验证 验证成功,和数据库进行交互(增删改查); 验证成功,页面提示表单填写失败;一、Django使用普通表单操作数据库1、html代码: <form ac...原创 2019-05-26 14:35:01 · 1525 阅读 · 0 评论 -
Django中富文本编辑器KindEditor的使用和图片上传
1.简介:KindEditor 是一套开源的在线HTML编辑器,主要用于让用户在网站上获得所见即所得编辑效果,开发人员可以用 KindEditor 把传统的多行文本输入框(textarea)替换为可视化的富文本输入框。 KindEditor 使用 JavaScript 编写,可以无缝地与 Java、.NET、PHP、ASP 等程序集成,比较适合在 CMS、商城、论坛、博客、Wiki、电子邮件等互联...原创 2018-05-28 21:10:36 · 3647 阅读 · 1 评论 -
Django之template模板内置过滤器
Django的内置过滤器:过滤器 说明 add 加法 addslashes 添加斜杠 capfirst 首字母大写 center 文本居中 cut 切除字符 date 日期格式化 default 设置默认值 default_if_none 为None设置默认值 dictsort 字典排序 dic...转载 2018-05-28 21:18:44 · 1847 阅读 · 0 评论 -
Django使用xadmin集成富文本编辑器Ueditor
一、xadmin的安装与配置1、安装xadmin,其中第一种在python3中安装不成功,推荐第二种或者第三种方式一:pip install xadmin方式二:pip install git+git://github.com/sshwsfc/xadmin.git方式三:下载https://codeload.github.com/sshwsfc/xadmin/zip/master...原创 2018-07-02 16:32:32 · 2688 阅读 · 1 评论