我在Django'my_project'中有my_app。我的my_app中有两个模型
class Author(model):
name = CharField(...)
created_at = DateTimeField(auto_now_add=True, null=True)
updated_at = DateTimeField(auto_now=True, null=True)
def get_absolute_url()
kwargs = {'author_pk': self.pk, }
return reverse('author', kwargs=kwargs)
class Post(model):
title = CharField(...)
author = ForeignKey(Author, ...)
created_at = DateTimeField(auto_now_add=True, null=True)
updated_at = DateTimeField(auto_now=True, null=True)
def get_absolute_url()
kwargs = {'author_pk': slef.author.pk, 'post_pk': self.pk, }
return reverse('author', kwargs=kwargs)
我在my_app文件夹中有一个文件名站点地图,如下所示:
class AuthorSitemap(Sitemap):
changefreq = "monthly"
priority = 0.9
def items(self):
return Author.objects.all()
def lastmod(self, obj):
return obj.updated_at
class PostSitemap(Sitemap):
changefreq = "monthly"
priority = 0.9
def items(self):
return Post.objects.all()
def lastmod(self, obj):
return obj.updated_at
在urls文件的my_project文件夹中,我有这个:
sitemaps = {
'my_app': PartnerSitemap, 'my_app': PartnerBlogPostSitemap,
}
urlpatterns = [
...
...
path('sitemap.xml', sitemap, {'sitemaps': sitemaps}, name='django.contrib.sitemaps.views.sitemap'),
]
如您所见,我有一本字典,其中有两个具有相同键的项。我将其更改如下。它仍然不起作用:
sitemaps = {
'my_app': [PartnerSitemap, PartnerBlogPostSitemap, ]
}
我应该如何使其起作用?
以这种方式工作:
sitemaps = {
'my_app1': PartnerSitemap
'my_app2', PartnerBlogPostSitemap,
}