我目前有一个'blog'应用程序,它将根据用户名显示不同用户的blogposts。这就是我的urls.py的样子。将一个变量(一个标志)从urls.py传递到django中的views.py
urlpatterns = patterns('blog.views',
url(r'^(?P<blog_author>[^/]+)/$', 'entries', name='blog'),
url(r'^(?P<blog_author>[^/]+)/(?P<entry_slug>[^/]+)/$', 'blog_entry', name='blog_entry'),
)
所以,blog/authorname/
会由特定作者列出所有博客帖子条目和blog/authorname/foo-post/
将呈现一个特定的博客文章。我试图做的是永久重定向校友成员的博客帖子分别为blog/alumni/authorname
和blog/alumni/authorname/foo-post/
。我在用户模型中添加了一个字段,用于指示用户是否是校友。
对于普通用户和校友来说,views功能基本相同。以下是我一直在努力做的事情:在entries
视图函数中,我添加了一些可以检查校友成员的行。如果某个博客作者是校友,则将HttpResponsePermanentRedirect
至blogs/alumni/alumni_author/
与自渲染部分相同,调用相同的entries
查看功能。所以基本上,我的entries
功能正在尝试检查成员类型,为正常和校友成员呈现视图。
它看起来对我说,你只需要建立一个URL'URL(R'^校友/ (?P [^ /] +)/ $','entries',name ='blog_alumni'),'当然不做重定向。 –