django官方文档3.0学习笔记 02]

  • 视图的创建
  • 匹配变量
  • 模板渲染和数据处理
  • 抛出错误404
  • 模板系统

视图的创建

  • Django中,视图表现为一个python函数(polls.py)
  • 根据用户请求的URL来使用那个视图(urls.py)

匹配变量

# urls.py中配置URL
urlpatterns = [path('<int:question_id>/', views.detail, name='detail'),
]
# views.py中引用变量
def detail(request, question_id):return HttpResponse("You're looking at question %s." % question_id)

模板渲染和数据处理

  • 模版存放目录(polls/templates/)

  • 模版载入配置(传递字典数据context)

    def index(request):latest_question_list = Question.objects.order_by('-pub_date')[:5]template = loader.get_template('polls/index.html')context = {'latest_question_list': latest_question_list,}return HttpResponse(template.render(context, request))
    
  • 快捷函数重写index()视图

    def index(request):latest_question_list = Question.objects.order_by('-pub_date')[:5]context = {'latest_question_list': latest_question_list}return render(request, 'polls/index.html', context)
    

抛出错误404

def detail(request, question_id):try:question = Question.objects.get(pk=question_id)except Question.DoesNotExist:raise Http404("Question does not exist")return render(request, 'polls/detail.html', {'question': question})
  • 快捷函数get_object_or_404( )

    question = get_object_or_404(Question, pk=question_id)
    

模板系统

  • 循环调用: {% for … in … %} {% endfor %}

  • 变量:{{ xxx }}

  • 模板中替换URL

    替换前

    <li><a href="/polls/{{ question.id }}/">{{ question.question_text }}</a></li>
    

    替换后

    <li><a href="{% url 'detail' question.id %}">{{ question.question_text }}</a></li>
    
  • URL 名称添加命名空间,视图不唯一,指向具体的应用视图

    无指向

    <li><a href="{% url 'detail' question.id %}">{{ question.question_text }}</a></li>
    

    指向具体命名空间

    <li><a href="{% url 'polls:detail' question.id %}">{{ question.question_text }}</a></li>
    

学习资料连接:django官方文档

django官方文档3.0学习笔记 03相关推荐

  1. Solr入门之官方文档6.0阅读笔记系列(八) 相关过滤器

    第三部分 :   Understanding Analyzers, Tokenizers, and Filters Filter Descriptions You configure each fil ...

  2. 喜大普奔!Django官方文档终于出中文版了

    喜大普奔!Django官方文档终于出中文版了 文章来源:企鹅号 - Crossin的编程教室 昨天经 Sur 同学告知才发现,Django 官方文档居然支持中文了! 之所以让我觉得惊喜与意外,是因为: ...

  3. CZSC 官方文档(0.6.8)

    CZSC 是缠中说禅技术分析理论的 python 实现,该理论源自 缠中说禅 博客. 注意:文档写的比较匆忙,很多地方可能没有讲清楚.有什么疑问,可以到 常见问题(FAQ) 看看.看完还有疑问,可以直 ...

  4. JMeter官方文档阅读及实践笔记(上)

    JMeter笔记 一.测试计划元件概览 本节简单介绍测试计划的不同部分. 最小测试将包括测试计划.线程组和一个或多个采样器. 1.Thread Group,线程组 线程组元素是任何测试计划的起点.所有 ...

  5. jeecg-boot 官方文档v2.0快速开始之hello world 前端教程

    jeecg-boot 官方文档 快速开始之hello word 前端踩过的坑 前端新建vue  helloworldTest文件,若新建文件无vue选项,请先在idea 上按装vue 插件 2. 新建 ...

  6. django文档_如何在django官方文档中快速找到需要的内容

    许多新手程序员发现Django文档内容非常庞大. 假设想学习如何为用户执行登录.看着很简单:登录是Django的核心功能.如果搜索" django登录"或搜索文档,则会看到一些选项 ...

  7. django官方文档——django中的用户认证

    Django 中的用户认证¶ Django 自带一个用户认证系统,这个系统处理用户帐户.组.权限和基于 cookie 的会话.本文说明这个系统是如何工作的. 概览¶ 认证系统由以下部分组成: 用户 权 ...

  8. django官方文档1.11编翻:1-1-1概述

    django概述 因为django是在快节奏的编辑环境下开发的,它旨在使常见的Web开发任务变得快速而简单. 这是一个关于如何用django编写数据库驱动的Web应用程序的非正式概述. 本文档的目的是 ...

  9. django官方文档——使用多个数据库

    使用多个数据库¶ New in Django 1.2: Please, see the release notes 大多数其他文档都假设使用单一数据库,本文主要讨论如何在 Django 中使用多个数据 ...

  10. vue.js 2.0 官方文档学习笔记 —— 01. vue 介绍

    这是我的vue.js 2.0的学习笔记,采取了将官方文档中的代码集中到一个文件的形式.目的是保存下来,方便自己查阅. !官方文档:https://cn.vuejs.org/v2/guide/ 01. ...

最新文章

  1. win7仿linux主题,linuxmint 16 cinnamon模仿win7/win8主题
  2. streaming优化:spark.default.parallelism调整处理并行度
  3. oracle修改删除数据,[Oracle 错误修改删除数据后的恢复方法
  4. 机器学习系列之神经网络入门基础知识
  5. 三合一剪弦器怎么用_三合一冲锋衣推荐选购攻略:
  6. rpm -e --nodeps_微课 | rpm的思维导图
  7. 函数sigqueue
  8. 【UI/UX】浅谈Spin框
  9. c语言编写弹窗提示是否确认退出_弹窗设计的5条基本原则
  10. 22条你不知道的微营销干货
  11. Latice CPLD jed转VME文件简介
  12. SLAM之PTAM学习笔记
  13. 技术篇(二)Demo示例——Bundle打包和加载
  14. mini-smooth-signature.js:小程序canvas带笔锋手写签名,支持微信/支付宝/钉钉/QQ等多平台小程序使用
  15. 生成 8 / 16 / 32 位的UUID
  16. 地热能类毕业论文文献有哪些?
  17. 2018互联网金融公司排名——Top100(附完整榜单)
  18. html弹窗确认操作事件
  19. mPaaS跳转到继承于H5WebViewController的离线包容器出现蓝色导航条的问题
  20. 软件工程里有Java这一课程吗_软件工程总结

热门文章

  1. c语言自学路线图,C语言的知识体系图,C语言学习路线图
  2. 计量经济学计算机答案第三章课后答案,庞皓计量经济学第2版课后习题答案
  3. matlab倒立摆pid仿真,一级倒立摆课程设计--倒立摆PID控制及其Matlab仿真
  4. 比较全面的OA系统需求分析
  5. 网络编辑员国家职业标准
  6. 逆向分析CrackMe系列——CrackMe001
  7. 显示器是计算机多媒体的什么设备,多媒体输入设备有哪些
  8. VS与SQL、SSMS的安装,以及官方示例数据AdventureWorks2017的安装
  9. 无法打开html5,IE浏览器无法打开怎么办
  10. Python 可轻松开发植物大战僵尸游戏(附动态演示+源码分享)