建立视图

进入到第二个mysite目录。新建立views.py文件。

代码如下:

from django.http import HttpResponse

def hello(request):

return HttpResponse('hello world')

 

可以知道,视图文件,从django中引入模块http,并导入HttpResponse函数。视图中一个hello函数。其中的reutrn HttpResponse可以理解为c#中的response.Write

 

创建路由

通过浏览器的地址,从路由中去匹配视图。

urls.py文件中配置路由。

from django.conf.urls import patterns, include, url

from mysite.views import *

urlpatterns = patterns('',

       (r'^hello/',hello),

             # Examples:

    # url(r'^$', 'mysite.views.home', name='home'),

    # url(r'^mysite/', include('mysite.foo.urls')),

 

    # Uncomment the admin/doc line below to enable admin documentation:

    # url(r'^admin/doc/', include('django.contrib.admindocs.urls')),

 

    # Uncomment the next line to enable the admin:

    # url(r'^admin/', include(admin.site.urls)),

)

上边第二行红色的就是为hellp视图配置的路由。(r'^hello/',hello),r表示忽略转义字符,与C#中的@类似的含义。红色部分表示浏览器的地址,这里是正则支持。通过正则表达式来匹配浏览器地址。然后如果匹配地址成功,则把此地址的请求路由到蓝色的部分的视图。即,如果浏览器中访问hello,那会匹配到hello视图。注意的是,因为要用到views.py中的hello函数,所以要先加载views.py模块。即代码中的第一行红色的。

 

浏览器中访问

浏览器中输入http://127.0.0.1:8000/hello

即可看到hello world字样。

返回服务器时间的页

同上,自己想下,从浏览器访问time。那要有个time的匹配正则,即(r'^time/$',current_datetime),红色部分。就是在浏览器中输入time后,应该能找到与之匹配的路由。如果找到这个路由,应该调用一个视图。这个视图名可以随便命名,这里命名为current_datetime。有了路由,现在开始定义current_datetime的视图。

打开 views.py.新建立一个函数

def current_datetime(request):

    now=datetime.datetime.now()

    html="<thml><body>it is now %s.</body></html>" %now

    return HttpResponse(html)

使用之前,先要导入datetime

import datetime

然后,浏览器中访问地址http://127.0.0.1:8000/time/

 

 

 

 

posted on 2013-04-21 16:26  梅桦  阅读(811)  评论(0编辑  收藏  举报