Почему после добавления Sitemap перестали работать ссылки?

Добавил на сайт динамический sitemap. Все работает, sitemap.xml создается и все генерируемые страницы там отображаются. Но после этого при заходе на любую станицу сайта ошибки.

sitemaps.py
class AudiobookSitemap(Sitemap):
    changefreq = "always"
    priority = 0.8
    protocol = 'http'

    def items(self):
        return AudioBook.objects.all()

    def lastmod(self, obj):
        return obj.created

    def location(self, obj):
        return '/audiobook/%s' % (obj.slug)


class BookGenreSitemap(Sitemap):
    changefreq = "always"
    priority = 0.9
    protocol = 'http'

    def items(self):
        return BookGenre.objects.all()

    def lastmod(self, obj):
        return obj.created

    def location(self, obj):
        return '/audiobook_genre/%s' % (obj.slug)


urls.py
app_name = "main"

sitemaps = {
    'audiobook':AudiobookSitemap,
    'audiobook_genre':BookGenreSitemap,
}

urlpatterns = [
    url(r'^$', views.home, name='home'),
    path('sitemap.xml', sitemap, {'sitemaps': sitemaps}, name='django.contrib.sitemaps.views.sitemap'),

    url('search/', SearchResultsView.as_view(), name='search'),

    path("author/<slug:post_slug>/", author, name='author'),
    path("cycle/<slug:post_slug>/", cycle, name='cycle'),

    path("audiobook/<slug:post_slug>/", audiobook, name='audiobook'),
    path("audiobook_genre/<slug:post_slug>/", audiobook_genre, name='audiobook_genre')

]


Ну и сама ошибка при заходе на сайт -
Reverse for 'search' not found. 'search' is not a valid view function or pattern name.
  • Вопрос задан
  • 97 просмотров
Пригласить эксперта
Ответы на вопрос 1
@siarheisiarhei
config_all
urls.py
from django.contrib.sitemaps.views import sitemap
from blog.sitemaps import PostSitemap
from notes.sitemaps import MarginsSitemap
from city_notes.sitemaps import CityMarginsSitemap
from core.sitemaps import CelebrationSitemap, AnimatorSitemap, ServiceSitemap

sitemaps = {
    "blog": PostSitemap,
    "notes": MarginsSitemap,
    "city_notes": CityMarginsSitemap,
    "core.celebration": CelebrationSitemap,
    "core.animator": AnimatorSitemap,
    "core.service": ServiceSitemap,
}

urlpatterns = (
    [
        path(
            "sitemap.xml",
            sitemap,
            {"sitemaps": sitemaps},
            name="django.contrib.sitemaps.views.sitemap",
        ),
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы