django (六) 第一个django app 创建views

在Django,网页和其他内容通过views来进行交互。每个视图都通过一个简单的Python函数(或方法)来展示。Django将通过检查请求的URL来选择一个视图(更精确地说是域名后面的URL)。从URL到View的过程是通过URLconfs来控制的。

接下来让我们写一个view。首先打开polls/views.py,添加如下代码:

# -*- coding: utf-8 -*-
from django.http import HttpResponse
def index(request):
    return HttpResponse("Hello, world. You’re at the poll index.")

接下来打开在polls文件夹下新建一个urls.py文件,建立view和url的联系,代码如下:

# -*- coding: utf-8 -*-
from django.conf.urls import patterns, url
from polls import views
urlpatterns = patterns(‘‘,
    url(r‘^$‘, views.index, name=‘index‘)
)

然后打开mysite/urls.py,添加代码如下:

urlpatterns = patterns(‘‘,
    url(r‘^polls/‘, include(‘polls.urls‘)),
    url(r‘^admin/‘, include(admin.site.urls)),
)

注意一下,所有的html文件都要保存为utf-8格式。

现在你就有一个Poll的主页了,进入http://127.0.0.1:8000/polls/.

下面我们来分析一下这行代码:

url(r‘^$‘, views.index, name=‘index‘)
url有两个固定参数,正则表达式和view,另外还有两个可选的这里暂不做介绍。接下来让我们在polls/view.py里添加更多的方法。不过和之前的有所不同,他们多了一个变量。代码如下:

# -*- coding: utf-8 -*-
from django.http import HttpResponse
def 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)

然后在polls/url.py里添加下面的代码:

import sys
from django.conf.urls import patterns, url
from polls import views
reload(sys)
sys.setdefaultencoding(‘utf-8‘)
urlpatterns = patterns(‘‘,
    url(r‘^$‘, views.index, name=‘index‘),
    # ex: /polls/5/
    url(r‘(?P<poll_id>\d+)/$‘,views.detail,name=‘detail‘),
    # ex: /polls/5/results/
    url(r‘^(?P<poll_id>\d+)/results/$‘, views.results, name=‘results‘),
    # ex: /polls/5/vote/
    url(r‘^(?P<poll_id>\d+)/vote/$‘, views.vote, name=‘vote‘),
)

时间: 2024-10-29 19:11:42

django (六) 第一个django app 创建views的相关文章

django (三) 第一个django app 创建model

经过上一章,我们已经创建好一个django app了,接下来,我们开始完善它. 首先,我们先了解些基本概念. Django中创建的每个应用程序都是由Python的包组成,遵循某些约定.Django配有一个实用程序,自动生成一个应用程序的基本目录结构,所以您可以专注于编写代码,而不是创建目录. 那么项目和应用程序到底有什么区别呢? 一个app是一个web应用:比如一个博客系统,一个简单的投票系统.而一个项目是一个集合的配置和应用程序特定的Web站点.一个项目可以包含多个应用程序.应用程序可以存在于

django (七) 第一个django app 创建表单

首先,在polls/detail.html里添加<form>: <h1>{{ poll.question }}</h1> {% if error_message %} <p><strong>{{ error_message }}</strong></p> {% endif %} <form action="{% url 'polls:vote' poll.id %}" method="p

django (五) 第一个django app 创建template,修改admin外观

上一章,我们完成了admin的基本功能,但是,它的外观实在是太丑了,那么接下来,我们就尝试去改变它吧~ 要想改变它就要使用Django的模板系统.由于admin是Django自带的app,所以他用的是Django自带的模板系统. 首先你需要在项目中创建一个模板文件夹,你可以把它放在文件中的任何位置,这里假设路径是mysite/templates 注意:这里的mysite是最外面的文件夹.修改settings.py: TEMPLATE_DIRS = ( r'C:\mysite\templates'

django (四) 第一个django app 自动生成admin site

生成管理网站让你的员工或客户添加.更改和删除内容是非常繁琐的工作.出于这个原因,Django完全自动化管理接口模型的创建.Django明确的将“内容发布者”和“公共”网站进行分离.网站管理人员使用该系统添加新闻,事件,体育成绩,等等...显示内容在公共网站.Django为网站管理员创建一个统一的界面来编辑内容. 所以admin并不是给网页浏览者使用的,而是给管理者使用的. 下面,我们将admin应用添加进我们的项目.修改setting.py如下: INSTALLED_APPS = ( 'djan

django (二) 第一个django app

第一个django app 我们来做一个投票网站. 他由两部分组成: 一个公共界面让用户去投票 一个管理界面,对投票增删改. 首先,你得创建一个新的项目,只需一行代码,django将自动为你完成这项任务. cd切换到你想存储你项目的路径下如C:\,输入: django-admin.py startproject mysite 这时,你的C:\下将多了一个文件夹mysite,打开后你会看到: mysite/ manage.py mysite/ __init__.py settings.py url

【2】按照Django官网,创建一个web app 创建app/创建相应的数据库表

1. Creating app $ python manage.py startapp polls That'll create a directory polls, which is laid out like this: polls/ __init__.py admin.py migrations/ __init__.py models.py tests.py views.py 1.1 Edit polls/models.py: from django.db import models cl

django (八) 第一个django app 添加样式表和图片

在Django中,需要把Css和图片等文件放在static files下. 然后依次创建下列文件下: polls/static/polls/style.css 然后修改style.css如下: li a { color: green; } 下一步,在polls/index.html里添加下面代码: {% load staticfiles %} <link rel="stylesheet" type="text/css" href="{% static

django学习2-第一个Django页面:Hello World

在url.py中写入URL 一定要导入视图: from.mysite import hello url(r'^hello/$',hello), #r表示不转义特殊字符. 2.定义一个views.py 写入下面的语句 from django.http import HttpResponse def hello(request):    return HttpResponse("Hello world") 3.这样输入python manage.py runserver 访问127.0.0

第三百七十六节,Django+Xadmin打造上线标准的在线教育平台—创建用户操作app,在models.py文件生成5张表,用户咨询表、课程评论表、用户收藏表、用户消息表、用户学习表

第三百七十六节,Django+Xadmin打造上线标准的在线教育平台-创建用户操作app,在models.py文件生成5张表,用户咨询表.课程评论表.用户收藏表.用户消息表.用户学习表 创建名称为app_operation的用户操作APP,写数据库操作文件models.py models.py文件 #!/usr/bin/env python # -*- coding:utf-8 -*- from __future__ import unicode_literals from datetime i