2012-04-30 5 views
1

Im получает ошибку имени: name sitemaps is not defined из моего urls.py, когда я пытаюсь интегрировать файлы Sitemap с моим приложением.Django NameError urls.py

С моей urls.py:

from django.contrib.sitemaps import Sitemap 

(r'^sitemap\.xml$', 'django.contrib.sitemaps.views.sitemap', {'sitemaps': sitemaps}), 

Есть ли что-то не так с этим регулярным выражением моего urls.py? Или есть еще одна проблема?

Спасибо за ваш вклад

ответ

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} 
), 
) 
+0

Очень полезно. большое спасибо –

0

От the docs:

sitemaps should be a dictionary that maps a short section label (e.g., blog or news) to its Sitemap class (e.g., BlogSitemap or NewsSitemap). It may also map to an instance of a Sitemap class (e.g., BlogSitemap(some_var)).

Итак ... определить.

Смежные вопросы