/ / Pridanie súboru Sitemap do Django 1.10.7 - django, django-urls, django-sitemaps

Pridanie súboru Sitemap k Django 1.10.7 - django, django-urls, django-sitemaps

Mám problémy so získaním nastavenia Django na vygenerovanie súboru Sitemap pre mňa.

Do svojho súboru s nastaveniami som pridal nasledujúce položky

"django.contrib.sites",
"django.contrib.sitemaps",

a v mojom súbore s adresami URL mám toto:

from django.conf.urls import include, url
from django.contrib import admin

from ames import views

from cms.sitemaps import CMSSitemap

admin.autodiscover()

urlpatterns = [
url(r"^admin/", include(admin.site.urls)),
url(r"^contact/", include("contact.urls")),
url(r"^news/", include("news.urls")),
url(r"^sitemap.xml$", "django.contrib.sitemaps.views.sitemap", {"sitemaps": {"cmspages": CMSSitemap}}),
url(r"^$", views.home),
url(r"^", include("cms.urls")),
]

Pri nasadzovaní týchto zmien sa na webe zobrazí nasledujúca chyba:

TypeError at /sitemap.xml/
view must be a callable or a list/tuple in the case of include().

Akékoľvek myšlienky by boli veľmi vítané.

Upravený súbor urls.py:

from django.conf.urls import include, url
from django.contrib import admin
from cms.sitemaps import CMSSitemap
from django.contrib.sitemaps.views import sitemap
from ames import views

admin.autodiscover()

urlpatterns = [
url(r"^admin/", include(admin.site.urls)),
url(r"^contact/", include("contact.urls")),
url(r"^news/", include("news.urls")),
url(r"^sitemap.xml$", sitemap, {"sitemaps": {"cmspages": CMSSitemap}}),
url(r"^$", views.home),
url(r"^", include("cms.urls")),
]

odpovede:

0 pre odpoveď č. 1

Skús to:

from django.contrib.sitemaps.views import sitemap

# you code
url(r"^sitemap.xml$", sitemap, {"sitemaps": {"cmspages": CMSSitemap}}),

a odstrániť

url(r"^sitemap.xml$", "django.contrib.sitemaps.views.sitemap", {"sitemaps": {"cmspages": CMSSitemap}}),

všetky informácie o riešení sú chybné view must be a callable or a list/tuple in the case of include()