Django2.0学习笔记

在Django中的响应都是HttpResponse 或者是一个 错误响应(404,403)

1.响应(render,HttpResponse....)

render,HttpResponse,redirect等都是属于HttpResponse子类,只是不同的功能而已

在使用render渲染的时候在app的目录下需要创建templates的目录文件,加载的templates的目录文件其实与settings的TEMPLATES变量有关

TEMPLATES['BACKEND']的DjangoTemplates在每个INSTALLED_APPS中查找“templates”子目录

'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug',
                'django.template.context_processors.request',
                'django.contrib.auth.context_processors.auth',
                'django.contrib.messages.context_processors.messages',
            ],

        },

当渲染一个页面的时候,会将上述‘options’的上下文处理一并加载到模板template中,所以才会有request这个上下文

简写:render() 渲染模板使用的方法  更多Django的简写函数

抛出一个404错误 :

from django.http import Http404

.....

raise Http404('error message hit')  

....

简写:get_object_or_404(): 当获取的对象资源不存在就抛出404错误,否则就获取值

template 系统更多相关信息

拒绝那些在模板(template)中硬编码的URL   :

{% url 'the_url_name_parameter' [arg1 arg2 ...] %} 

the_url_name_parameter => 就是你要跳转的链接的name参数的值

 [arg1 arg2 ...]  如果该url有参数的话就传递进去 ‘’空格 ‘’隔开

如果多个app的name参数相同则怎么办呢?传递 携带app命名的name值来转换值

{% url 'app_name:the_url_name_parameter' [arg1 arg2 ...] %} 

这样的话就会反转成app_name下的对应的urls文件中的路径了

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值