`
qzriso
  • 浏览: 236421 次
  • 性别: Icon_minigender_1
  • 来自: ph
社区版块
存档分类
最新评论

Django笔记2

阅读更多
1.第一份视图:动态内容
我们的第一个目标是创建一个显示当前日期和时间的网页。让我们在上一章所创建的 mysite 目录中新建一份名为 views.py 的文件。
以下是一个以 HTML 方式返回当前的日期与时间的视图 (view),:
from django.http import HttpResponse
import datetime

def current_datetime(request):
    now = datetime.datetime.now()
    html = "<html><body>It is now %s.</body></html>" % now
    return HttpResponse(html)

2.将 URL 映射到视图
前一章中执行 django-admin.py startproject 时,该脚本会自动为你建了一份 URLconf(即 urls.py 文件)。让我们编辑一下这份文件。缺省情况下它是下面这个样子:

from django.conf.urls.defaults import *

urlpatterns = patterns('',
    # Example:
    # (r'^mysite/', include('mysite.apps.foo.urls.foo')),

    # Uncomment this for admin:
#     (r'^admin/', include('django.contrib.admin.urls')),
)

现在编辑该文件以展示我们的 current_datetime 视图:

from django.conf.urls.defaults import *
from mysite.views import current_datetime

urlpatterns = patterns('',
    (r'^time/$', current_datetime),
)

打开你的浏览器访问 http://127.0.0.1:8000/time/ 。 你就可以看到输出结果了。

3.带通配符的URL匹配模式
from django.conf.urls.defaults import *
from mysite.views import current_datetime, hours_ahead

urlpatterns = patterns('',
    (r'^time/$', current_datetime),
    (r'^time/plus/(\d{1,2})/$', hours_ahead),
)

def hours_ahead(request, offset):
    offset = int(offset)
    dt = datetime.datetime.now() + datetime.timedelta(hours=offset)
    html = "<html><body>In %s hour(s), it will be %s.</body></html>"
            % (offset, dt)
    return HttpResponse(html)
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics