canonicalwebteam.django views
1.0.0
Django應用程序的視圖,主要用於WebTeam Django應用程序。
您可以直接使用pip install canonicalwebteam.django_views安裝此模塊,或者添加canonicalwebteam.django_views requirements.txt for您的應用程序。
TemplateFinder是TemplateView的擴展,它試圖直接從URL加載相應的模板,而無需為每個URL編寫視圖。
它可以直接加載HTML模板,也可以解析包含“ Wrapper_template”前鍵鍵的標記文件。
這是如何在Django應用中使用TemplateFinder的示例:
# urls.py
from django . conf . urls import url
from canonicalwebteam . django_views import TemplateFinder
# ...
urlpatterns += url ( r"$^" , TemplateFinder . as_view ()),當應用程序解析URL時,它將按順序尋找以下位置的模板:
/parent/location/ => templates/parent/location.html/parent/location/ => templates/parent/location/index.html/parent/location/ => templates/parent/location.md/parent/location/ => templates/parent/location/index.md如果TemplateFinder遇到Markdown文件(Ending .md ),它將在YAML FrontMatter中尋找以下鍵:
wrapper_template :(例如: wrapper_template: /includes/markdown-wrapper.html )通往HTML模板的途徑,以放置分析的標記量表。如果路徑沒有領先的斜線(例如“模板/template.html”或“ ../templates/template.html”),則TemplateFinder將搜索相對於所討論的Markdown文件的位置。如果路徑context可選:(例如: context: {title: "Welcome", description: "A welcome page"} )額外的密鑰 /值對的字典,以傳遞到模板上下文。markdown_includes可選:(例如: markdown_includes: {nav: } )關鍵名稱到指向Markdown文件的模板路徑的映射。每個模板路徑將被解析,所得的HTML將在相關鍵下的模板上下文中傳遞。這是一個示例markdown文件:
---
wrapper_template: "/includes/markdown-wrapper.html"
markdown_includes:
nav: "includes/nav.md"
context:
title: "Welcome"
description: "A welcome page"
---
Welcome to my website.
## GitHub
I also have [a GitHub page](https://github.com/me).