Django GenericSitemap: Проблема с моделью

Я пытаюсь создать карту сайта Django с помощью функции GenericSitemap.

мой файл urls.py выглядит следующим образом:

from django.urls import path
from . import views
from django.views.generic.base import TemplateView
from re_analytics.models_new import AnalyticsData
from django.contrib.sitemaps import GenericSitemap
from django.contrib.sitemaps.views import sitemap




sitemaps = {
    'analytics': GenericSitemap({
        'queryset': AnalyticsData.objects.all(),
        'date_field': 'timestamp',
    }, 
    priority=0.9)
}



urlpatterns = [
...

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

]

Мой файл models_new.py выглядит следующим образом:

from django.db import models


class AnalyticsData(models.Model):
    index = models.TextField(blank=True, null=False)
    post_code = models.FloatField(blank=True, null=True)
...

Запуск приложения работает. У меня просто проблемы с доступом к представлению карты сайта. Я получаю следующее сообщение об ошибке:

OperationalError at /sitemap.xml
no such column: analytics_data.id
Request Method: GET
Request URL:    http://127.0.0.1:8000/sitemap.xml
Django Version: 3.2.5
Exception Type: OperationalError
Exception Value:    
no such column: analytics_data.id
Exception Location: /Users/finnj/coding/App1/env/lib/python3.9/site-packages/django/db/backends/sqlite3/base.py, line 423, in execute
Python Executable:  /Users/finnj/coding/App1/env/bin/python
Python Version: 3.9.6
Python Path:    
['/Users/finnj/coding/re_crawler_homepage/re_homepage',
 '/opt/homebrew/Cellar/python@3.9/3.9.6/Frameworks/Python.framework/Versions/3.9/lib/python39.zip',
 '/opt/homebrew/Cellar/python@3.9/3.9.6/Frameworks/Python.framework/Versions/3.9/lib/python3.9',
 '/opt/homebrew/Cellar/python@3.9/3.9.6/Frameworks/Python.framework/Versions/3.9/lib/python3.9/lib-dynload',
 '/Users/finnj/coding/App1/env/lib/python3.9/site-packages']

Это сообщение указывает на то, что столбец id не существует в модели. И да, он там не существует. 'local var' в сообщении об ошибке указывает на то, что приложение пытается извлечь этот столбец :

sql 
('SELECT "analytics_data"."id", "analytics_data"."index", '
 '"analytics_data"."post_code",...

Как так получается, что колонка id вдруг появляется? Я его вообще не использую

Может кто-нибудь помочь мне? Спасибо!

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