Как иметь более 50000 адресов в карте сайта django

path(
    'sitemap.xml',
    sitemap, {
        'sitemaps': sitemaps
        }, name='django.contrib.sitemaps.views.sitemap'
),

вышеприведенный пример - это моя конфигурация карты сайта на уровне проекта urls.py

from django.contrib.sitemaps import Sitemap

from .models import Post

class PostSitemap(Sitemap):
    changefreq = 'always'
    priority = 0.9
    protocol = 'https'
    limit = 5

    def items(self):
        return Post.aupm.all()
    
    def lastmod(self, obj):
        return obj.updated

этот вышеприведенный код предназначен для sitemaps.py на уровне приложения который генерирует этот код

<urlset>
<url>
<loc>
https://localhost:8000/en/kavi/lobaan-ke-5-laabh-aur-upyog-aur-7-mithk-0x76/
</loc>
<lastmod>2022-01-28</lastmod>
<changefreq>always</changefreq>
<priority>0.9</priority>
</url>
<url>

Что я хочу:

  1. what to do if i have much more element in more than 50,000 (fifty thousand) element in that application,
  2. If i want to add more element(ie sitemap) from diffrent application

Да, это возможно с помощью индексов sitemap. Из документации:

Фреймворк sitemap также имеет возможность создавать индекс sitemap, который ссылается на отдельные файлы sitemap, по одному на каждый раздел, определенный в вашем словаре sitemaps. Единственные различия в использовании:

  • Вы используете два представления в вашем URLconf: django.contrib.sitemaps.views.index() и django.contrib.sitemaps.views.sitemap().
  • Представление django.contrib.sitemaps.views.sitemap() должно принимать аргумент ключевого слова section.

Смотрите больше здесь.

Вернуться на верх