Django
文章
Django——关于URL分组匹配问题
**基本原则说明:** - Django会一次匹配列表中的每个URL模式,在遇到第一个请求的URL相匹配的模式时停下来 - 分组传参包括以下内容: - 一个HttpRequest实例。 - 如果正则表达式是无名组,那么正则表达式所匹配的内容将作为位置参数提供给视图。 - 如果正则表达式是命名组,那么正则表达式所匹配的内容将作为关键参数提供给视图。 - 对于GET、POST请求本身的参数不进行匹配。作为扩展参数kwargs提供给视图。 - 如果请求的URL没有匹配到任何一个正则表达式,或者匹配过程中抛出异常,会进行相应的错误处理。 分组参数 关键参数 **匹配分组算法说明:** \> 分组对应参数,是如何传递参数的过程;匹配分组算法,是如何匹配字符串的过程。 - 如果有命名参数,则使用命名参数,忽略非命名参数。 - 否则,将以位置参数传递所有的非命名参数。 - 所有的匹配结果都是字符串 能够通过url函数额外传递多个参数。 终于他妈的明白这种关键参数和位置参数的意思了: 关键...
Django——基本理解
http请求处理的MVC结构 HTTP处理的中间件结构 记住几个重要的预处理函数 process_request(self, request) request预处理函数 在Django接收到request之后,但仍未解析URL以确定应当运行的view之前。调用 返回 None(Django将继续处理这个request,执行后续的中间件,然后调用相应的view,“我对继续处理这个request没意见”) 或者返回 HttpResponse 对象(Django将不再执行任何其它的中间件(无视其种类)以及相应的view。 Django将立即返回该HttpResponse,“我不想其他代码处理这个request,我要提早返回” ). process_view(self, request, callback, callback_args, callback_kwargs) view预处理函数 在Django执行完request预处理函数并确定待执行的view之后,但在view函数实际执行之前。 process_response(self, request, response) Res...
Django——快捷视图函数
render 使用模板进行渲染 redirect重定向到一个新的url,也就是说我当前没有渲染的视图,我交给另外一个动作来处理,我提供动作必要的参数。所以传递参数到视图的过程绝对不应该用redirect,而是render。 redirect有多种形式。可以是绝对路径、相对路径、动作(视图)名称 + 必要的参数
DJango——模板层复习
这个模板层大致又复习了一遍之前没找到的东西又发现了 在模板层中有的内奸标签API真的很有用,还有很多有用的其他东西。
Django——三个最关键的对象
其中有一节专门讲了File对象如何上传,然而上一次为这个文件上传苦恼了很久。 重新复习了两个关键对象 HttpRequest对象 .scheme 表示请求的方案http或者https .body原始HTTP请求的正文。包括GET请求的参数,POST请求的表单,媒体对象的二进制文件。 .path 表示请求页面的完整路径,不包含域名,可以用来点赞或者喜欢之后刷新原来的网页 .method HTTP请求的方法GET或者POST .encoding 请求的编码 .GET 一个字典对象,包含HTTP GET的参数 .POST 一个类字典对象,包含了表单数据的请求。 .FILES 一个字段对象,包含所上传的文件。 .COOKIES 标准的python字典,包含所有的cookie。键和值都是字符串 .META 一个python字典,包含HTTP头部信息。 .user 一个用户对象。 .session 一个可以读写的session字典对象。 方法: get_host() 获取主机名127.0.0.1:8000 get_full_path() 返回path和查询字符串**/music...
Django——数据库操作复习
这个是当前最终要的一部分知识,因为接下来的工作包括太多的数据库操作了,必须得详细了解一下。 -————————————————————————————————————– 关于模型的说明 字段选项 定义字段过程中对字段的性质进行控制 null blank choices db_column db_index db_tablespace default auto_to_now error_messages help_text primary_key(主键) unique(唯一性) unique_for_date unique_for_month unique_for_year verbose_name 验证器 注册和获取查询 字段类型 定义字段的类型 AutoField自增字段 BigIntegerField 二进制字段 BooleanField For CommaSeparatedIntegerField rendering DateField DecimalField DurationField EmailField...
django进阶——登录验证实现
User对象字段 username password email first_name last_name 创建User User.objects.create_user() user.save() manage.py createsuperuser manage.py changepassword username 验证User的用户名密码 authenticate(username, password) from django.contrib.auth import authenticate user =authenticate(username**=‘john’, password=‘secret’)if user isnot None: # the password verified for the user if user.**is_active:print(“User is valid, active and authenticated”) else: print(“Thepassword is valid, ...
django进阶——models
文件上传字段FileField(upload_to=Node,max_length=100, **options)[source] FileField.upload_to 此属性提供了一种设置上传目录和文件名的方式,可以通过两种方式进行设置。在这两种情况下,该值都将传递给Storage.save()方法。 如果您指定了一个字符串值,它可能包含strftime()格式,将由文件上传的日期/时间替换(以便上传的文件不填满给定的目录)。例如: class MyModel(models.Model): # 文件将会上传到 MEDIA_ROOT/uploads upload =models.FileField(upload_to=’uploads/‘) # or… # 文件将会保存到MEDIA_ROOT/uploads/2015/01/30 upload =models.FileField(upload_to=’uploads/%Y/%m...
django进阶——Settings
MEIDIA_ROOT 保存用户上传的目录和系统绝对文件系统路径。 - 处理从MEDIA_ROOT提供的媒体的URL,用于管理存储的文件。 如果设置为非空值,则它必须以斜杠结尾。 您将需要将这些文件配置为在开发和生产环境中提供服务。 - 如果您想在模板中使用{{MEDIA_URL}},请在“模板”的“context_processors”选项中添加“django.template.context_processors.media” MEDIA_URL 引用或者说访问MEIDIA_ROOT中的文件时使用的URL,即客户通过浏览器访问的路径。 STATIC_ROOT 用来保存静态文件(搭建网站的css库,scrip脚本,图片),默认值为none。收集静态文件进行部署的目录的绝对路径 STATIC_URL 引用STATIC_ROOT中静态文件时使用的URL - 如果不是 None,这将被用作资产定义(Media类)和staticfiles应用程序的基本路径。 - 如果设置为非空值,则...












