Django教程:http://www.liujiangblog.com/course/django/2
第一个Django应用
该应用包括以下两个部分:
一个可以让公众用户进行投票和查看投票结果的站点
一个让可以进行增删改查的后台admin管理界面
Part 1:请求与响应
一、 新建项目
$ django-admin startproject mysite
二、 启动开发服务器
$ python manage.py runserver
三、 创建投票应用(app)
$ python manage.py startapp polls
INSTALLED_APPS = ['polls',]
四、编写第一个视图
在polls/views.py文件中,编写代码:
在polls目录中新建一个文件,名字为urls.py
这里需要导入include模块。打开mysite/urls.py文件
Part 2:模型与管理后台
一、数据库安装
二、创建模型
编辑polls/models.py文件,具体代码如下:
三、启用模型
$ python manage.py makemigrations polls
$ python manage.py sqlmigrate polls 0001
$ python manage.py migrate
四、使用模型的API
$ python manage.py shell
五、admin后台管理站点
1. 创建管理员用户
2. 启动开发服务器:http://127.0.0.1:8000/admin/
3. 进入admin站点
4. 在admin中注册投票应用
打开polls/admin.py文件,加入下面的内容:
4. admin站点的主要功能
Part 3:视图和模板
一、概述
二、编写视图
下面,打开polls/views.py文件,输入下列代码:
然后,在polls/urls.py文件中加入下面的url模式,将其映射到我们上面新增的视图。
三、编写能实际干点活的视图
快捷方式:render()
四、返回404错误
快捷方式:get_object_or_404()
五、 使用模板系统
六、删除模板中硬编码的URLs
七、URL names的命名空间
Part 4:表单和类视图
一、表单form
mysite/urls.py文件如下:
mysite/settings.py文件如下:
polls/views.py应该如下所示:
polls/urls.py应该如下所示:
polls/model.py文件如下:
polls/admin.py文件如下:
templates/polls/index.html文件如下:
templates/polls/detail.html文件如下:
templates/polls/results.html文件如下:
二、 使用类视图:减少重复代码
1.改良URLconf
2.修改视图
Part 5:测试
一、自动化测试概述
二、编写测试程序
1.遇见BUG
2.创建一个测试来暴露这个bug
3.运行测试程序
3.修复bug
4.更加全面的测试
Part 6:静态文件
一、使用静态文件
二、添加背景图片
三、直接访问静态文件
Part 7:自定义admin站点
一、定制模型表单
二、添加关联对象
三、定制实例列表页面
四、定制admin整体界面
1.定制项目模板
五、定制admin首页
六、源码对照

最新文章

  1. 使用自定义的framework
  2. CDN技术
  3. GridView获取当前行
  4. SQLite常见警告
  5. Android 随想录之 Android 系统架构
  6. C语言局部变量和全局变量问题汇总
  7. log4j配置祥解
  8. 自动启动docker container
  9. C# Best Practices - Building Good Classes
  10. mount命令使用具体解释(Linux)
  11. 用python写刷票程序
  12. WPF: 在 MVVM 设计中实现对 ListViewItem 双击事件的响应
  13. vue+websocket+express+mongodb实战项目(实时聊天)
  14. 网络基础一 交换机 路由器 OSI7层模型
  15. JNDI在本项目中的应用
  16. [UOJ 41]【清华集训2014】矩阵变换
  17. MySQL DATE_SUB()
  18. Android的ViewFlipper-android学习之旅(三十五)
  19. PJSUA2开发文档--第四章 端点ENDPOINT
  20. 学习PYTHON之路, DAY 10 进程、线程、协程篇

热门文章

  1. 未能同步 iPhone XXX,因为这台电脑不再被授权使用在此iPhone上购买的项目。
  2. MySQL JSON 类型数据操作
  3. 前端-CSS-介绍及三种引入方式
  4. Linux启动提示Kernel panic - not syncing: Attempted to kill init解决办法
  5. 3.3 JSP内置对象概述
  6. css中选择器
  7. c# 结构体 集合 复习
  8. 元素的定位id和name
  9. luoguP1080 国王游戏 (贪心+高精度)
  10. Find Peak Element(ARRAY - Devide-and-Conquer)