from django.urls import path #ZNY 导入Django URL路径模块 from django.views.decorators.cache import cache_page #ZNY 导入缓存页面装饰器 from . import views #ZNY 导入当前应用的视图模块 app_name = "blog" #ZNY 定义应用命名空间为blog urlpatterns = [ #ZNY 定义URL模式列表 path( #ZNY 首页路由 r'', views.IndexView.as_view(), #ZNY 使用类视图处理首页 name='index'), #ZNY URL名称为index path( #ZNY 首页分页路由 r'page//', #ZNY 带页码参数的URL views.IndexView.as_view(), #ZNY 使用相同的类视图处理分页 name='index_page'), #ZNY URL名称为index_page path( #ZNY 文章详情页路由 r'article////.html', #ZNY 包含年月日和文章ID的URL views.ArticleDetailView.as_view(), #ZNY 使用文章详情类视图 name='detailbyid'), #ZNY URL名称为detailbyid path( #ZNY 分类详情页路由 r'category/.html', #ZNY 包含分类名称的URL views.CategoryDetailView.as_view(), #ZNY 使用分类详情类视图 name='category_detail'), #ZNY URL名称为category_detail path( #ZNY 分类分页路由 r'category//.html', #ZNY 包含分类名称和页码的URL views.CategoryDetailView.as_view(), #ZNY 使用相同的类视图处理分页 name='category_detail_page'), #ZNY URL名称为category_detail_page path( #ZNY 作者详情页路由 r'author/.html', #ZNY 包含作者名称的URL views.AuthorDetailView.as_view(), #ZNY 使用作者详情类视图 name='author_detail'), #ZNY URL名称为author_detail path( #ZNY 作者分页路由 r'author//.html', #ZNY 包含作者名称和页码的URL views.AuthorDetailView.as_view(), #ZNY 使用相同的类视图处理分页 name='author_detail_page'), #ZNY URL名称为author_detail_page path( #ZNY 标签详情页路由 r'tag/.html', #ZNY 包含标签名称的URL views.TagDetailView.as_view(), #ZNY 使用标签详情类视图 name='tag_detail'), #ZNY URL名称为tag_detail path( #ZNY 标签分页路由 r'tag//.html', #ZNY 包含标签名称和页码的URL views.TagDetailView.as_view(), #ZNY 使用相同的类视图处理分页 name='tag_detail_page'), #ZNY URL名称为tag_detail_page path( #ZNY 文章归档页路由 'archives.html', cache_page( #ZNY 使用缓存装饰器缓存页面 60 * 60)( #ZNY 缓存1小时 views.ArchivesView.as_view()), #ZNY 使用归档视图 name='archives'), #ZNY URL名称为archives path( #ZNY 友情链接页路由 'links.html', views.LinkListView.as_view(), #ZNY 使用链接列表视图 name='links'), #ZNY URL名称为links path( #ZNY 文件上传路由 r'upload', views.fileupload, #ZNY 使用函数视图处理文件上传 name='upload'), #ZNY URL名称为upload path( #ZNY 清理缓存路由 r'clean', views.clean_cache_view, #ZNY 使用函数视图清理缓存 name='clean'), #ZNY URL名称为clean ]