随笔分类 -  Django

摘要:由于django-mdeditor官方插件没有支持第三方存储,所以,我们只能进行修改源码的方式实现了。 本次改写即使替换了其文件,不使用七牛云也是无关紧要的,因为在存储时,去settings.py中判断是否启用七牛云存储,只有配置了七牛云相关信息才会执行,否则还是原先的方式存储在本地。 源文件路径v 阅读全文
posted @ 2020-12-30 16:14 xsan 阅读(265) 评论(0) 推荐(0) 编辑
摘要:事务简介 在 MySQL 中只有使用了 Innodb 数据库引擎的数据库或表才支持事务。 事务处理可以用来维护数据库的完整性,保证成批的 SQL 语句要么全部执行,要么全部不执行。 事务用来管理 insert,update,delete 语句 一般来说,事务是必须满足4个条件(ACID)::原子性( 阅读全文
posted @ 2020-04-24 11:26 xsan 阅读(538) 评论(0) 推荐(0) 编辑
摘要:update_or_create(defaults=None, **kwargs) defaults是用来更新的, kwargs是用来查询的 阅读全文
posted @ 2020-04-24 10:10 xsan 阅读(3170) 评论(0) 推荐(0) 编辑
摘要:自定义分页算法: 1 from django.core.paginator import Paginator 2 3 4 def page_fun(table_data_obj, page, page_split, around_count=2): 5 ''' 6 table_data_obj: 数 阅读全文
posted @ 2020-02-14 14:42 xsan 阅读(215) 评论(0) 推荐(0) 编辑
摘要:一、配置环境 django 3.0.3 qiniu 7.2.6 全部可以使用pip安装 二、在app的目录下创建qiniu_config.py文件,用于存放七牛云的相关配置信息 qiniu_config = { 'access_key': '', 'secret_key': '', 'bucket_ 阅读全文
posted @ 2020-02-07 19:40 xsan 阅读(964) 评论(2) 推荐(0) 编辑
摘要:一、注册七牛云账号 二、创建存储空间 1、登录七牛云,进入管理控制台 2、创建空间 三、添加cdn域名 参照该官方文档配置:https://developer.qiniu.com/fusion/kb/1322/how-to-configure-cname-domain-name 四、获取access 阅读全文
posted @ 2020-02-07 19:31 xsan 阅读(247) 评论(0) 推荐(0) 编辑
摘要:# -*- coding: utf-8 -*- # flake8: noqa import qiniu from qiniu import CdnManager # 账户ak,sk access_key = '...' secret_key = '...' auth = qiniu.Auth(acc 阅读全文
posted @ 2020-02-07 15:44 xsan 阅读(636) 评论(0) 推荐(0) 编辑
摘要:一、生成小型的csv文件 1、直接处理数据 from django.http import HttpResponse import csv # 简单生成下载csv文件 def down_csv_1(request): # 指定返回的类型为csv response = HttpResponse(con 阅读全文
posted @ 2020-01-09 22:37 xsan 阅读(1089) 评论(0) 推荐(0) 编辑
摘要:重定向分为永久性重定向和暂时性重定向,在页面上体现的操作是浏览器会从一个页面自动跳转到另一个页面。比如,用户访问了一个需要权限的页面,但是该用户当前没有登录,因此我们应该给他重定向到登录页面。 永久性重定向:http的状态码是301,多用于旧网址被废弃了,要转到一个新的网址确保用户的访问,最经典的就 阅读全文
posted @ 2020-01-09 19:29 xsan 阅读(2260) 评论(0) 推荐(0) 编辑
摘要:原因: 执行migrate命令会报错的原因是:数据库的'django_migrations'表中的迁移版本记录和代码中的迁移脚本不一致的。解决方法: 使用--fake参数 首先对比数据库中的迁移脚本和代码中的迁移脚本。然后找到哪个不同,之后再使用'--fake',将代码中的迁移脚本添加到'djang 阅读全文
posted @ 2020-01-09 16:38 xsan 阅读(1329) 评论(0) 推荐(0) 编辑
摘要:from django.views.decorators.http import require_http_methods,require_GET,require_POST,require_safe @require_GET = @require_http_methods(['GET']) @req 阅读全文
posted @ 2020-01-09 16:35 xsan 阅读(145) 评论(0) 推荐(0) 编辑
摘要:第一种:将csrf_token放在from表单里 <script> function add_competion_goods() { $.ajax({ url: "{% url 'add_competition_goods' %}", type: "POST", dataType: "json", 阅读全文
posted @ 2020-01-05 10:10 xsan 阅读(1371) 评论(0) 推荐(0) 编辑
摘要:自定义的模版过滤器必须要放在app中,并且该app必须在INSTALLED_APPS中进行安装。然后再在这个app下面创建一个python包叫做templatetags(这个名字是固定的,不能随意更改)。再在这个包下面创建一个python文件。然后在这个文件中写过滤器。 过滤器实际上就是python 阅读全文
posted @ 2020-01-01 21:07 xsan 阅读(528) 评论(0) 推荐(0) 编辑
摘要:一、add 将传进来的参数添加到原来的值上面。这个过滤器会尝试将“值”和“参数”转换成整形然后进行相加。如果转换成整形过程中失败了,那么将会将“值”和“参数”进行拼接。如果是字符串,那么会拼接成字符串,如果是列表,那么会拼接成一个列表。实例代码如下: {{ value|add:"2"}} 如果val 阅读全文
posted @ 2019-12-30 22:04 xsan 阅读(899) 评论(0) 推荐(0) 编辑
摘要:一、模板变量笔记:1、在模版中使用变量,需要将变量放到‘{{}}’中。'{{ 变量 }}'2、如果想访问对象的属性,可以通过'对象.属性名'的方式访问3、如果想要访问一个字典的key对应的value,那么只能通过'字典.key'4、因为在访问字典的'key'时候也用‘.’来访问,因此不能在字典中定义 阅读全文
posted @ 2019-12-29 14:32 xsan 阅读(388) 评论(0) 推荐(0) 编辑
摘要:路径的配置,模版上下文的配置等。模版路径可以在两个地方配置。 1、'DIRS':这是一个列表,在这个列表中可以存放所有的模版路径,以后在视图中使用render或者render_to_string渲染模版的时候,会在这个列表的路径中查找模版。 2、'APP_DIRS':默认为Ture,这个设置为Tru 阅读全文
posted @ 2019-12-25 21:01 xsan 阅读(560) 评论(0) 推荐(0) 编辑
摘要:使用path或者re_path后,在url中都可以包含参数,而有时候想指定默认的参数,可以通过在urls.py中写两个url都指向同一个视图函数。一个带参数一个不带参数。同时,在视同函数的参数中设置默认值。这样,当匹配到不带参数的url时,就会使用默认值。实例代码: urls.py 1 from d 阅读全文
posted @ 2019-12-23 22:44 xsan 阅读(851) 评论(0) 推荐(0) 编辑
摘要:django内置的url转换器,包括有int、str、uuid等等。但是有时候他们不能满足我们的需求,因此就需要使用自定义url转换器。自定义url转换器的五步:1、定义一个类,直接继承自object就可以2、在类中定义一个属性regex,这个属性是用来限制url转换器规则的正则表达式。3、实现to 阅读全文
posted @ 2019-12-22 22:30 xsan 阅读(924) 评论(0) 推荐(0) 编辑
摘要:1、如果在反转url的时候,需要添加参数,那么可以通过传递'kwargs'参数到'reverse'函数中。实例代码: urls.py from django.urls import path, re_path from app01 import views urlpatterns = [ path( 阅读全文
posted @ 2019-12-22 19:15 xsan 阅读(3851) 评论(0) 推荐(0) 编辑
摘要:1、re_path和path的作用是一样的。只不过're_path'是在写url的时候可以用正则表达式,功能更加强大。2、写正则表达式都推荐使用原生字符串。也就是以‘r’开头的字符串:r'move/'3、在正则表达式中定义变量,需要使用圆括号括起来。这个参数是有名字的,那么需要使用'?P<参数的名字 阅读全文
posted @ 2019-12-22 18:00 xsan 阅读(3688) 评论(6) 推荐(0) 编辑