本文介绍 django.contrib.sitemaps.views.index
的用法。
声明
views.index(request, sitemaps, template_name='sitemap_index.xml', content_type='application/xml', sitemap_url_name='django.contrib.sitemaps.views.sitemap')
站点Map框架还能够创建一个站点Map索引,该索引引用单个站点Map文件,在您的sitemaps
字典中定义的每个部分都有一个。用法上的唯一区别是:
- 您在 URLconf 中使用了两个视图:
django.contrib.sitemaps.views.index()
django.contrib.sitemaps.views.sitemap()
django.contrib.sitemaps.views.sitemap()
section
关键字参数。
以下是上述示例的相关 URLconf 行的样子:
from django.contrib.sitemaps import views
urlpatterns = [
path('sitemap.xml', views.index, {'sitemaps': sitemaps},
name='django.contrib.sitemaps.views.index'),
path('sitemap-<section>.xml', views.sitemap, {'sitemaps': sitemaps},
name='django.contrib.sitemaps.views.sitemap'),
]
这将自动生成一个引用 sitemap-flatpages.xml
和 sitemap-blog.xml
的 sitemap.xml
文件。
类和 Sitemap
sitemaps
dict 完全没有改变。
如果您的站点Map之一具有超过 50,000 个 URL,您应该创建一个索引文件。在这种情况下,Django 会自动对站点Map进行分页,并且索引会反映这一点。
如果您不使用原始站点Map视图 - 例如,如果它使用缓存装饰器进行包装 - 您必须命名站点Map视图并将 sitemap_url_name
传递给索引视图:
from django.contrib.sitemaps import views as sitemaps_views
from django.views.decorators.cache import cache_page
urlpatterns = [
path('sitemap.xml',
cache_page(86400)(sitemaps_views.index),
{'sitemaps': sitemaps, 'sitemap_url_name': 'sitemaps'}),
path('sitemap-<section>.xml',
cache_page(86400)(sitemaps_views.sitemap),
{'sitemaps': sitemaps}, name='sitemaps'),
]
相关用法
- Python scipy integrate.trapz用法及代码示例
- Python inspect.Parameter.replace用法及代码示例
- Python inspect.Parameter.kind用法及代码示例
- Python int转exponential用法及代码示例
- Python integer转string用法及代码示例
- Python inspect.Signature.from_callable用法及代码示例
- Python inspect.isasyncgenfunction用法及代码示例
- Python scipy interpolate.CubicHermiteSpline.solve用法及代码示例
- Python inspect.isawaitable用法及代码示例
- Python scipy interpolate.CubicSpline.solve用法及代码示例
- Python int.from_bytes用法及代码示例
- Python scipy integrate.cumtrapz用法及代码示例
- Python inspect.BoundArguments.apply_defaults用法及代码示例
- Python scipy interpolate.PchipInterpolator.solve用法及代码示例
- Python int.bit_length用法及代码示例
- Python input用法及代码示例
- Python integer转roman用法及代码示例
- Python inspect.BoundArguments用法及代码示例
- Python int.bit_count用法及代码示例
- Python inspect.Parameter.kind.description用法及代码示例
- Python scipy integrate.simps用法及代码示例
- Python inspect.formatargspec用法及代码示例
- Python int.to_bytes用法及代码示例
- Python scipy interpolate.Akima1DInterpolator.solve用法及代码示例
- Python inspect.Signature.replace用法及代码示例
注:本文由纯净天空筛选整理自djangoproject.com大神的英文原创作品 django.contrib.sitemaps.views.index。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。