2012-04-30 6 views
1

Im obtenir une erreur de nom: name sitemaps is not defined de mon urls.py lorsque j'essaie d'intégrer sitemaps avec mon application.Django NameError urls.py

De mon urls.py:

from django.contrib.sitemaps import Sitemap 

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

Y at-il quelque chose de mal avec cette expression régulière de mon urls.py? Ou y a-t-il un autre problème?

Merci pour votre entrée

Répondre

2

En général, vous allez faire quelque chose comme ça -

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

Très utile. Merci beaucoup –

0

De 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)).

Alors ... définir.