Python学习之路—2018/6/19

Python学习之路—2018/6/19

1.注册自定义转化器

converts.py

class Birthday:
    regex = ‘[0-9]{8}‘  # 匹配规则

    def to_python(self, value):  # 匹配的字符串返回具体的变量值,传递到对应的视图函数中
        return int(value)

    def to_url(self,value):  # 反向解析
        return "%04d" % value

urls.py

from django.urls import path, register_converter
from app01 import views, urls, converts

register_converter(converts.Birthday, "birth")
urlpatterns = [
    path(‘gyq/<birth:year>‘, views.birthday)
]

views.py

def birthday(request, date):
    return HttpResponse(date)

2.HttpRequest对象

url组成:协议/IP/端口/path/请求数据

request常用属性

HttpRequest.GET 包含了HTTP GET的所有参数

HttpRequest.POST 如果请求中包含表单数据,将这些数据包装成QueryList对象

HttpRequest.method Http请求的方法(get/post)

HttpRequest.encoding 提交的数据编码

request常用方法

HttpRequest.get_full_path() 返回path ,包括查询字符串。

HttpRequest.get_full_path() 判断请求是否为XMLHttpRequest发起的

视图响应对象

响应对象主要有三种形式:

  • HttpResponse()
  • render()
  • redirect()

HttpResponse()括号内直接跟一个具体的字符串作为响应体

render()

render(request, template_name[, context])

request: 用于生成响应的请求对象。

template_name:要使用的模板的完整名称,例如index.html

context:添加到模板上下文的一个字典。默认是一个空字典。如果字典中的某个值是可调用的,视图将在渲染模板之前调用它。

原文地址:https://www.cnblogs.com/ExBurner/p/9201273.html

时间: 2024-08-08 06:54:53

Python学习之路—2018/6/19的相关文章

Python学习之路—2018/6/14

Python学习之路-2018/6/14 1.浏览器与服务器 浏览器向服务器发送请求的过程为请求过程,服务器向浏览器响应的过程为响应过程. 2.简单的web应用程序 import socket sock = socket.socket() sock.bind(("100.113.14.43", 8080)) sock.listen(5) with open("index.html", "r") as f: # 先将样式写入html文件中,然后再读

Python学习之路—2018/6/26

Python学习之路-2018/6/26 1.ORM 单表操作 删除与修改记录 >>> ret = Book.objects.filter(title="go").delete() (1, {'app01.Book': 1}) >>> Book.objects.filter(price=115).update(price=120) 多表操作 创建模型 一对一 models.OneToOneField(to="表名", on_del

Python学习之路—2018/6/29

Python学习之路-2018/6/29 1.跨表查询 跨表查询: 基于对象查询 基于双下划线查询 聚合和分组查询 F与Q查询 F查询 过滤器只能讲字段值与常量进行比较,如果需要用到与字段值进行比较则需要用到F查询,F查询还支持与常量之间的加减乘除的运算.数据: # 查询评论数大于阅读数的书籍 >>> Book.objects.filter(comment_count__gt=F("read_count")) <QuerySet [<Book: 斗破苍穹&

Python学习之路—2018/7/10

Python学习之路-2018/7/10 博客开发项目流程 ? 一般来说,一个项目的开发流程分为:项目需求.设计表结构.功能开发.测试功能.产品上线,本次学习以博客园为蓝本进行开发. 1.项目需求 博客的开发的需求主要有以下几点: 基于auth模块和Ajax实现登录验证 基于forms组件和Ajax实现注册功能 设计博客首页 设计个人站点页面 设计文章详情页面 实现文章点赞功能 实现文章的评论功能,包括对文章的评论以及对文章评论的评论 实现富文本编辑框 防止xss攻击(例如当用户的文章中含有JS

Python学习之路—2018/7/11

Python学习之路-2018/7/10 3.功能开发 3.1 登录验证 login.html <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1"> <t

Python学习之路-Day1-Python基础

Python学习之路第一天 学习内容: 1.Python简介 2.安装 3.第一个Python程序 4.变量 5.字符编码 6.用户输入 7.表达式if..else语句 8.表达式for语句 9.break和continue 10.while循环 11.字符串格式化 1.python简介 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承. 最新的TIOB

Python学习之路

Python学习之路 目录 Python学习之路[第一篇]:流程控制,用户交互,语法要求,变量,字符,注释,模块导入的使用 Python学习之路[第二篇]:文件,字符串,列表,元组,字典,集合的使用 更新中...

Python学习之路-装饰器&生成器&正则表达式

装饰器 通俗的讲,装饰器就是在不改变源代码基础上,给源代码增加新功能. 不改变函数的源代码.调用方式.返回值等,给函数增加新功能. 经典案例:登录装饰器, def login_decorator(func):     def inner():         if USER_TEMP["status"] == False:             print("\033[31;1m用户未登录,请先登录\033[0m")             login_atm()

Python学习之路【第一篇】-Python简介和基础入门

1.Python简介 1.1 Python是什么 相信混迹IT界的很多朋友都知道,Python是近年来最火的一个热点,没有之一.从性质上来讲它和我们熟知的C.java.php等没有什么本质的区别,也是一种开发语言,而且已经进阶到主流的二十多种开发语言的top 5(数据源自最新的TIOBE排行榜). 来头不小啊!二十多种主流的开发语言,我该从哪一个开始呢?人生苦短,let‘s python! 1.2 Python的由来和发展趋势 Python的前世源自鼻祖“龟叔”.1989年,吉多·范罗苏姆(Gu