【发布时间】:2019-11-10 18:06:22
【问题描述】:
我正在使用带有RequestSite(未设置SITE_ID)的站点框架来生成基于域的内容。我需要为每个域生成具有不同结果的站点地图,但我没有找到如何使这两个框架协同工作的方法。有没有办法在Sitemap 中获取当前请求的Site? (从SITE_ID config 获取它不是我的选择)。
这是我想做的一个例子:
from django.contrib.sitemaps import Sitemap
from blog.models import Entry
class BlogSitemap(Sitemap):
def items(self, request):
return Entry.objects.filter(is_draft=False, site=request.site)
但这不可能,因为items() 中没有request。还有其他方法可以根据站点过滤站点地图中的项目吗?
【问题讨论】:
-
我没有正确理解这个问题。您是否尝试根据请求的域获取站点地图?或者您想为 domain_1 和 domain_2 显示一些特定的站点地图?
-
@JPG 是的,我需要基于域的特定内容。查看更新的问题
标签: django django-sites django-sitemaps