3

ピラミッドのドキュメントには、UXに関する優れたチュートリアルがあります。

http://docs.pylonsproject.org/projects/pyramid_tutorials/en/latest/humans/creatingux/step07/index.html

私が気づいたことの1つは、チュートリアルで、コード内で「グローバルレイアウト」を明示的に設定して渡していることです(以下を参照)。ここのドキュメントに示されているように、私は常に「load」コマンドを使用していたので、これは異常で不要だと思いました。

http://chameleon.repoze.org/docs/latest/

これは単なる個人的な好みの問題ですか、それともこのように「グローバルレイアウト」を設定して使用することには本当の利点がありますか?

チュートリアルベースビュークラス:

class Layouts(object):
    @reify
    def global_template(self):
        renderer = get_renderer("templates/global_layout.pt")
        return renderer.implementation().macros['layout']

チュートリアルテンプレートファイル:

<div metal:use-macro="view.global_template">
    <div metal:fill-slot="content">
        <p>Home page content goes here.</p>
    </div>
</div>

しかし、私のテンプレートファイルでは、次のものを使用しています。

<div metal:use-macro="load: global_layout.pt">
    <div metal:fill-slot="content">
        <p>Home page content goes here.</p>
    </div>
</div>
4

1 に答える 1

5

(ビューを介した)間接的な方法により、柔軟性が向上します。小さなプロジェクトではメリットはそれほど明白ではありませんが、このアプローチは大きなプロジェクトで確実に成果を上げます。「load:」は、main_template(Zope / Plone-speak)がここにあることを示しています。ビューを使用すると、どこからでも取得でき、テンプレートとは関係なく変更できます。

于 2012-01-13T05:12:08.190 に答える