Django:有没有办法设置全局视图?例如通过所有URL启用侧边栏数据
我正在建立一个Django应用,做的是一个比较简单的博客,到目前为止一切都很顺利。我已经实现了评论、标签等功能。但是有一件事让我很烦恼:我想要的侧边栏无法正常工作。我使用的是django.views.generic.date_based这个通用视图,这是我博客的urls.py文件:
urlpatterns = patterns('django.views.generic.date_based',
(r'(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>\w{1,2})/(?P<slug>[-\w]+)/$', 'object_detail',dict(info_dict, slug_field='slug',template_name='blog/detail.html')),
(r'^(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>w{1,2})/(?P<slug>[-\w]+)/$', 'object_detail', dict(info_dict, template_name='blog/list.html')),
(r'^(?P<year>\d{4})/(?P<month>[a-z]{3})/(?P<day>w{1,2})/$','archive_day',dict(info_dict,template_name='blog/list.html')),
(r'^(?P<year>\d{4})/(?P<month>[a-z]{3})/$','archive_month', dict(info_dict, template_name='blog/list.html')),
(r'^(?P<year>\d{4})/$','archive_year', dict(info_dict, template_name='blog/list.html')),
(r'^$','archive_index', dict(info_dict, template_name='blog/list.html')),
)
当我使用带有'archive_index'的URL时,我可以很容易地在侧边栏中显示最新的文章,但当我进入某篇文章时,只能使用“object_detail”,这导致我的侧边栏内容消失了。解决这个问题的最佳方法是什么?有没有办法让某些对象在全局可用?通过视图或者其他方式。