Django
python web框架Django学习
番茄炒鸡蛋z
好好学Python
展开
-
Django配置404页面
目录一.settings配置二.url设置三.views中设置四.最后附一个404页面的模板。一.settings配置1.首先需要在settings中将DEBUG由原来的True改为FalseDEBUG = False2.需要设置ALLOWED_OSTS = ["*"]二.url设置三.views中设置def page_not_found(request,**kwargs): # 全局404处理函数 response = render_to_response('404.原创 2020-11-23 20:44:22 · 2031 阅读 · 1 评论 -
django项目--全文检索
目录全文检索框架以及搜索引擎的使用1. 安装与配置1) Python包的安装2) 在settings.py文件的配置。2. 创建引擎及索引1) 项目下创建`search_indexes.py`文件,并在此文件中创建引擎和索引(固定写法和用法)。2) 创建索引文件3) 生成索引文件3. 索引文件的使用1) 前端使用2) 路由配置3) 启动项目,点击搜索栏按钮4. 改变分词方式1) 安装jieba分词包2) 创建ChineseAnalyzer.py文件4) 更改whoosh_backend.py文件5) 重新生原创 2020-11-18 10:57:38 · 435 阅读 · 0 评论 -
将网页侧边栏制成inclusion_tag
目录制作步骤详细文件`mytag.py``left_menu.html`将left_menu.html加载到需要填充的html页面制作步骤三步走: 1. 在应用下创建一个名字必须是 templatetags 的文件夹。 2. 在该文件夹下创建任意名字的 .py 文件。 eg:mytag.py 3. 在py文件下必须先写下面代码 from django import template register = template.Library()详原创 2020-10-31 11:49:43 · 164 阅读 · 0 评论 -
Auth认证模块
目录1. Auth模块是什么2. auth模块常用方法模块导入authenticate()方法login(HttpRequest, user)is_authenticated()装饰器login_requierd()check_password(password)set_password(password)logout(request)create_user()create_superuser()3. 扩展默认的auth_user表1. Auth模块是什么Auth模块是Django自带的用户认证模块:原创 2020-10-28 14:17:01 · 751 阅读 · 1 评论 -
csrf跨站请求伪造
全称Cross Site Request Forgery,跨站请求伪造某些恶意网站上包含链接、表单按钮或者JavaScript,它们会利用登录过的用户在浏览器中的认证信息试图在你的网站上完成某些操作,这就是跨站攻击防csrf的使用在django的模板中,提供了防止跨站攻击的方法,使用步骤如下:step1:在settings.py中启用’django.middleware.csrf.CsrfViewMiddleware’中间件,此项在创建项目时,默认被启用step2:在csrf1.html中添.原创 2020-10-27 13:17:17 · 79 阅读 · 0 评论 -
Django中间件
目录前戏中间件什么是中间件?django中自带七个中间件django生命周期图自定义中间件如何自定义中间件`process_request`方法总结`process_response`方法总结process_request 和 process_response 方法测试`process_view`方法`process_exception`方法`process_template_response`方法中间件的执行流程前戏学会了给视图函数加装饰器来判断是用户是否登录,把没有登录的用户请求跳转到登录页面。我们原创 2020-10-24 17:58:42 · 152 阅读 · 0 评论 -
cookie和session
目录Cookie什么是Cookie?表现形式Django中操作Cookie设置Cookie获取Cookie删除CookieSession什么是Session?表现形式特别注意Django中Session相关方法django中的session配置Cookie什么是Cookie?Cookie具体指的是一段小信息,它是服务器发送出来存储在浏览器上的一组组键值对,下次访问服务器时浏览器会自动携带这些键值对,以便服务器提取有用信息。简单来说 ---- 就是保存在浏览器端的键值对表现形式一般都是 k:v原创 2020-10-23 22:05:43 · 94 阅读 · 0 评论 -
Django Form表单组件
Form介绍 我们之前在HTML页面中利用form表单向后端提交数据时,都会写一些获取用户输入的标签并且用form标签把它们包起来。与此同时我们在好多场景下都需要对用户的输入做校验,比如校验用户是否输入,输入的长度和格式等正不正确。如果用户输入的内容有错误就需要在页面上相应的位置显示对应的错误信息.。Django form组件就实现了上面所述的功能。总结一下,其实form组件的主要功能如下:生成页面可用的HTML标签对用户提交的数据进行校验保留上次输入内容普通方式手写注册功能.原创 2020-10-23 10:21:13 · 464 阅读 · 0 评论 -
数据库查询优化
ORM语句的特点惰性查询:如果仅仅是编写了orm语句,后面没用到该语句查询出来的参数,那么orm会自动识别,不发起sql查询语句。(只有使用了才会去数据库查询数据)1: only和defer # res = models.Book.objects.all() res = models.Book.objects.only('title') # print(res.title) # 不会走数据库 print(res.authors) # 走数据库 """ 查询only括号里面的字段不会重新原创 2020-10-21 10:31:47 · 72 阅读 · 0 评论 -
Django的生命周期
第一步:浏览器发起请求第二步:WSGI创建socket服务端,接收请求(Httprequest)第三步:中间件处理请求第四步:url路由,根据当前请求的URL找到视图函数第五步:view视图,进行业务处理(ORM处理数据,从数据库取到数据返回给view视图;view视图将数据渲染到template模板;将数据返回)第六步:中间件处理响应第七步:WSGI返回响应(HttpResponse)第八步:浏览器渲染...原创 2020-07-16 10:36:31 · 176 阅读 · 0 评论 -
项目中实现自动生成链接功能
1. 表结构的设计class ProjectInvite(models.Model): """ 项目邀请码 """ project = models.ForeignKey(verbose_name='项目', to='Project') code = models.CharField(verbose_name='邀请码', max_length=64, unique=True) count = models.PositiveIntegerField(verbose...原创 2020-06-22 23:25:31 · 2299 阅读 · 0 评论 -
文件上传总结
一、form表单上传文件1、编写上传页面upload.html<body> <form method="post" action="/upload/" enctype="multipart/form-data"> {% csrf_token %} <input type="text" name="title">&...原创 2020-04-30 22:44:06 · 169 阅读 · 0 评论 -
day04--Django模板
一、模板介绍 作为Web框架,Django提供了模板,可以很便利的动态生成HTML 模版系统致力于表达外观,而不是程序逻辑 模板的设计实现了业务逻辑(view)与显示内容(template)的分离,一个视图可以使用任意一个模板,一个模板可以供多个视图使用 模板包含 HTML的静态部分 动态插入内容部分 Django模板语...原创 2020-04-26 20:31:17 · 120 阅读 · 0 评论 -
day03--Django视图
一、URLconf 在settings.py文件中通过ROOT_URLCONF指定根级url的配置 urlpatterns是一个url()实例的列表 一个url()对象包括: 正则表达式 视图函数 名称name 编写URLconf的注意: 若要从url中捕获一个值,需要在它周围设置一对圆括号 ...原创 2020-04-25 11:57:21 · 126 阅读 · 0 评论 -
day02--Django模型
一、ORM它实现了数据模型与数据库的解耦,即数据模型的设计不需要依赖于特定的数据库,通过简单的配置就可以轻松更换数据库ORM是“对象-关系-映射”的简称,主要任务是:根据对象的类型生成表结构将对象、列表的操作,转换为sql语句将sql查询到的结果转换为对象、列表二、定义模型 在模型中定义属性,会生成表中的字段 django根据属性的类型确定以下信息: ...原创 2020-04-25 11:49:00 · 103 阅读 · 0 评论 -
day01--Django入门
任务:简单了解Django开发流程 step1:创建虚拟环境 step2:安装django step3:创建项目 step4:创建应用 python manage.py startapp XXX 配置setting,将应用加入installed_app项 step5:在models.py中定义模型类 step6:定...原创 2020-04-25 11:36:24 · 131 阅读 · 0 评论