【Django turorial 4】
来源:互联网 发布:windows10软件字体模糊 编辑:程序博客网 时间:2024/05/17 17:14
13. 定义View
view 提供一系列供调用的方法并且包含一个独特的template。在一个blog页面通常会有以下几个view
~Blog 首页,展示最新的入口
~每个入口均有一个链接页面
~年度归档
~月归档
~日归档
~评论内容
在我们的投票系统中,同样也需要以下几个页面:
~索引页面。用来展示最新的投票内容
~详细展现页面。展示每一条投票的内容
~投票结果页面。
~投票页面。用来处理每一个choice内容选择的动作
from django.http import HttpResponsedef index(request): return HttpResponse("Hello, world. You're at the poll index.")def detail(request, poll_id): return HttpResponse("You're looking at poll %s." % poll_id)def results(request, poll_id): return HttpResponse("You're looking at the results of poll %s." % poll_id)def vote(request, poll_id): return HttpResponse("You're voting on poll %s." % poll_id)
14. 定义URL
在pollsite/urls 定义如下链接~
from django.conf.urls.defaults import patterns, include, urlfrom django.contrib import adminadmin.autodiscover()urlpatterns = patterns('', url(r'^polls/$', 'polls.views.index'), url(r'^polls/(?P<poll_id>\d+)/$', 'polls.views.detail'), url(r'^polls/(?P<poll_id>\d+)/results/$', 'polls.views.results'), url(r'^polls/(?P<poll_id>\d+)/vote/$', 'polls.views.vote'), url(r'^admin/', include(admin.site.urls)),)
其中正则表达式的部分可以参考相关资料。
同时,需要在polls/view.py中定义各种方法如下:
from django.shortcuts import render_to_responsefrom polls.models import Polldef index(request): latest_poll_list = Poll.objects.all().order_by('-pub_date')[:5] return render_to_response('polls/index.html', {'latest_poll_list': latest_poll_list})
from django.shortcuts import render_to_response, get_object_or_404
# ...def detail(request, poll_id): p = get_object_or_404(Poll, pk=poll_id) return render_to_response('polls/detail.html', {'poll': p})在polls中创建 index.html文件并定义如下:
{% if latest_poll_list %} <ul> {% for poll in latest_poll_list %} <li><a href="/polls/{{ poll.id }}/">{{ poll.question }}</a></li> {% endfor %} </ul>{% else %} <p>No polls are available.</p>{% endif %}
定义detail.html文件并定义如下:
<h1>{{ poll.question }}</h1><ul>{% for choice in poll.choice_set.all %} <li>{{ choice.choice }}</li>{% endfor %}</ul>请继续阅读tutorial 5
- 【Django turorial 4】
- Java Turorial
- RabbitMQ Turorial
- Python Turorial 翻译
- Design Patterns turorial
- Turorial of buliding Windows Mobile development Enviroment
- Python Turorial 学习笔记8 --Classes
- tango with django chapter 4 Django Basics
- django模型4
- Django项目4
- Django笔记4
- Django 学习笔记(4)
- Django自学习4
- fedora22 python3.4 django
- setup django 4 test
- Django补充(4)
- django 开发(4)
- django-4-模板
- 判断接口是否已经打开并运行
- jstl fmt标签使用
- C++学习笔记
- 计算机基础知识
- 基于jrtplib的rtp数据发送
- 【Django turorial 4】
- c#调用Matlab引擎的几种方式
- 关于C++中RTTI的思考?
- C++ Dll
- XP硬盘安装Ubuntu 10.10双系统图解
- Percona对MySQL标准版本的改进
- JavaEE 各种技术原理图
- 安装Ubuntu 10.10后XP启动项丢失
- Spatial index is slow when trying to find all the points within a range of a geocode.