实际操作了Django入门教程中的范例,对一些细节有了更清晰的掌握。感觉只看文档不动手是不行的,只看文档没法真正掌握其中要素之间的关系,看了很多遍也不行,必须动手做了才能掌握。同时,这次练习在Eclipse+PyDev环境下进行,了解了这个开发环境对Django的支持情况。
 
Django网站提供的入门教程:
 
教程中的数据库结构
Poll {question, pub_date}
Choice {poll, choice_text, votes}
 
Choice.poll = Poll.id
 
这个教程完成了以下几个页面的处理
 
1. views.index
http://127.0.0.1:8000/polls/
显示表Poll中所有的record
 
2. views.detail
http://127.0.0.1:8000/polls/1/
显示某个poll下面的所有choice,并提供vote入口。
注意在views.detail()处理中,使用的是poll数据表,在template中,通过poll.choice_set获得对应的choice表数据。
 
3. views.vote
http://127.0.0.1:8000/polls/1/vote/
这个页面不会显示出来,是对单击按钮Vote的处理。
 
4. views.results
http://127.0.0.1:8000/polls/1/results/
Vote处理过之后,会转到results页面。
 
关于数据表之间的关系处理
related manager对象,用来方便管理表之间的关系。可以省去手工维护字段关系的操作。
提供了方便的相互访问机制。可以通过poll直接访问相关的choice数据。
poll.choice_set.add
choice.poll
 
关于Admin
admin提供了丰富的定制功能。本身就是用template描述的。
 
2014.10.3

Django Tutorial 学习笔记的更多相关文章

  1. Django初识 学习笔记一

    Django初识 学习笔记一 mvcviewsmodelstemplate. 一 MVC框架 MVC全名是Model View Controller,是模型(model)-视图(view)-控制器(c ...

  2. Django:学习笔记(9)——视图

    Django:学习笔记(9)——视图 基础视图 基于函数的视图,我们需要在使用条件语句来判断请求类型,并分支处理.但是在基于类的视图中,我们可以在类中定义不同请求类型的方法来处理相对应的请求. 基于函 ...

  3. Django:学习笔记(8)——文件上传

    Django:学习笔记(8)——文件上传 文件上传前端处理 本模块使用到的前端Ajax库为Axio,其地址为GitHub官网. 关于文件上传 上传文件就是把客户端的文件发送给服务器端. 在常见情况(不 ...

  4. Django:学习笔记(9)——用户身份认证

    Django:学习笔记(9)——用户身份认证 User

  5. Django:学习笔记(8)——视图

    Django:学习笔记(8)——视图

  6. Django:学习笔记(7)——模型进阶

    Django:学习笔记(7)——模型进阶 模型的继承 我们在面向对象的编程中,一个很重要的的版块,就是类的继承.父类保存了所有子类共有的内容,子类通过继承它来减少冗余代码并进行灵活扩展. 在Djang ...

  7. Django:学习笔记(6)——模型

    Django:学习笔记(6)——模型 快速上手 模型到底是什么呢?我们可以想,如果一张数据表的各个字段可以自动映射到一个类的各个属性,则每条记录对应这个类的一个对象.那我们通过类方法来操作对象(即表记 ...

  8. Django:学习笔记(5)——会话

    Django:学习笔记(5)——会话 配置中间件 Django中使用会话,需要配置一个中间件. 配置会话引擎 默认情况下,Django在数据库中存储sessions(使用了django.contrib ...

  9. Django:学习笔记(4)——请求与响应

    Django:学习笔记(4)——请求与响应 0.URL路由基础 Web应用中,用户通过不同URL链接访问我们提供的服务,其中首先经过的是一个URL调度器,它类似于SpringBoot中的前端控制器. ...

随机推荐

  1. IE11下用forms身份验证的问题

    <authentication mode="Forms"> <forms name="weboa" loginUrl="login. ...

  2. Debian 7 升级内核

    Debian 7(wheezy)的内核是3.2,要想把内核升级到3.16怎么办呢?使用backports源! 一.添加backports源 打开/etc/apt/source.list文件,加入以下: ...

  3. Java读取文件方法和给文件追加内容

    本文转载自:http://www.cnblogs.com/lovebread/archive/2009/11/23/1609122.html 1.按字节读取文件内容2.按字符读取文件内容3.按行读取文 ...

  4. Ext.Slider的试用小记

    最近需要做一个滑动条,动态改变地图动画播放的速度.实在没有自己用js写一个的那个水平,于是找到了Ext.Slider,ExtJS的版本是3.3.0. new Ext.Slider({ id: 'pla ...

  5. js中call和apply的用法和区别

    它们的作用都是将函数绑定到另外一个对象上去运行,两者仅在定义参数方式有所区别: obj.call(thisObj, arg1, arg2, ...); obj.apply(thisObj, [arg1 ...

  6. 设置transparent是否多此一举

    在css是设置中我们经常会用到background:transparent这一属性设置,表示背景透明.但是background默认的颜色就是透明的!那么设置是否属于多此一举呢?我们浏览网页时经常见到“ ...

  7. Java Concurrency - 浅析 CountDownLatch 的用法

    The Java concurrency API provides a class that allows one or more threads to wait until a set of ope ...

  8. Asp.net MVC 4 Html帮助类 II

    Html Helpers @Html.AntiForgeryToken It generates a hidden form field (anti-forgery token) that is va ...

  9. 改变UITextField placeHolder 字体 颜色

    [_textSearchField setValue:[UIColor redColor] forKeyPath:@"_placeholderLabel.textColor"]; ...

  10. OC7_目录操作

    // // main.m // OC7_目录操作 // // Created by zhangxueming on 15/6/19. // Copyright (c) 2015年 zhangxuemi ...