Django书籍教程第8章:假捕获URL

时间:2012-01-05 03:26:50

标签: django

该部分的标题:Faking Captured URLconf Values

(对于专家:你可以跳到大胆的部分......开始是为像我这样的学习者)

据我所知,给出的例子只不过是“url alias”。

urlpatterns = patterns('',
    (r'^mydata/birthday/$', views.my_view, {'month': 'jan', 'day': '06'}),
    (r'^mydata/(?P<month>\w{3})/(?P<day>\d\d)/$', views.my_view),
)

因此,如果我们输入http://example.com/mydata/May/18/,我可以在屏幕上显示:

Hi C++ Learner, May 18 is your birthday!

使用此网址技术,如果我输入http://example.com/mydata/birthday

,我将看到相同的显示

注意月份和日期是硬编码的。对于今天的动态网站,我们如何使用此技术(url-alias)显示每个用户的生日页面?

在视图中,我们必须将月和日传递给render_to_response才能使用模板。但是如果我说下面这会抛出错误,因为月份和日期没有在urls.py中定义。

(r'^mydata/birthday/$', views.my_view, {'month': month, 'day': day})

1 个答案:

答案 0 :(得分:1)

创建包含生日信息的用户个人资料模型,在允许访问该URL之前需要登录,然后从视图中的配置文件中提取数据。