当我尝试将站点地图与我的应用程序集成时,我从urls.py收到名称错误:name sitemaps is not defined
。
来自我的urls.py:
from django.contrib.sitemaps import Sitemap
(r'^sitemap\.xml$', 'django.contrib.sitemaps.views.sitemap', {'sitemaps': sitemaps}),
我的urls.py中的这个正则表达式有问题吗?或者还有其他问题吗?
感谢您的输入
答案 0 :(得分:2)
一般来说,你会做这样的事情 -
from django.contrib.sitemaps import Sitemap, FlatPageSitemap
sitemaps = {
'site': Sitemap,
'flatpages': FlatPageSitemap,
}
# ..
# Some url patterns. urlpatterns must be defined by now
# ..
urlpatterns += patterns("",
url(r'^sitemap\.xml$',
'django.contrib.sitemaps.views.sitemap',
{'sitemaps': sitemaps}
),
)
答案 1 :(得分:0)
来自the docs:
sitemaps
应该是一个字典,用于将短节标签(例如blog
或news
)映射到其Sitemap
类(例如BlogSitemap
或NewsSitemap
)。它还可能映射到Sitemap
类的实例(例如BlogSitemap(some_var)
)。
所以...定义它。