メインの子供用テンプレート ファイルには、div タグのみを含めたいと思います。各タグは、レンダリングされた子供用ファイルを呼び出して、その中にコンテンツを貼り付けるだけです。(phpの「インクルード」機能のように)しかし、これを行う方法がわかりません。誰かがそれについて何か考えを持っていますか?
2 に答える
1
最初に「base_layout.kid」テンプレートを定義できます。
<html xmlns:py="http://purl.org/kid/ns#">
<head>
<title>App Name - ${page_title}</title>
<link href="layout.css" type="text/css" rel="stylesheet" />
${page_specific_css()}
</head>
<body>
<h1>Now viewing: ${page_title} of App Name</h1>
<content>Default content</content>
<div class="footer">Page Footer Text</div>
</body>
</html>
次に、「page.kid」の「content」タグを必要なデータに置き換えます。
<html py:layout="'base_layout.kid'"
xmlns:py="http://purl.org/kid/ns#">
<link py:def="page_specific_css()"
href="layout.css" type="text/css" rel="stylesheet" />
<div py:match="item.tag == 'content'">
<ul>
<li>Content Item 1</li>
<li>Content Item 2</li>
<li>Content Item 3</li>
</ul>
</div>
</html>
Python シェルで正しい html を取得するかどうかを確認できます (使用されているすべての識別子を削除した後)。
>>> import kid
>>> t = kid.Template("page.kid")
>>> print t.serialize()
于 2009-07-17T06:08:00.110 に答える
1
デフォルトの kid の代わりに genshi に交換する場合は、include タグを使用してこれを行うことができます。
<xi:include href="menu.html" />
げんしへの交換はかなり簡単です。構成の問題だけだと思います。テンプレート タグは、それ以外は同じように機能します。ただし、拡張子の名前を .kid から .html に変更する必要があります。
于 2009-05-17T12:18:20.990 に答える