11

HTMLテンプレートにPythonのデータを入力したいと思います。私はHTMLを知りませんが、私の同僚がHTMLテンプレートを準備し、私がデータを提供します。しかし、彼はPythonについてほとんど知りません。

このHTMLとPythonの分離をうまく処理する非常に基本的なテンプレートフレームワークを提案できますか(つまり、HTMLの特別な構文はあまりなく、Pythonデータコードで知っているHTMLもあまりありません)。理想的には、HTMLテンプレートは純粋なHTMLに非常に近いものである必要があります。

データとしてテーブルも用意するので、HTMLテーブルコードを準備する必要がなければいいのですが、代わりに彼は最小限のマークアップロジックでそれを行うことができます。理想的には、私の同僚がCSSのようなより高度な概念を適用している場合でも、システムは機能するはずです。

豊富なリストを見つけましたが、技術用語がわからないため、どのシステムが私の要件に最も近いかを判断するのは非常に困難です。

編集:要点は、私たちはそれを使った初心者であり、基本的な解決策だけが必要です:)-それでも理想的には、私にとってHTMLはなく、彼にとっては単純なHTMLをはるかに超えていません。

4

3 に答える 3

17

djangoには非常に優れた強力なテンプレート エンジンがあります。その目的は、HTML を Python ロジックから分離することです (ただし、 djangoを完全に使用する必要があるため、テンプレートだけが必要な場合はやり過ぎになる可能性があります)。

テンプレートが本当に簡単 (ループがない) 場合は、ネイティブの python string.format関数を使用できます (Fortran コードの構成ファイルを生成するサイド プロジェクトで使用しましたが、それほど悪くはありませんでした)。

他の選択肢は、django テンプレートに非常に近いが、スタンドアロンでより強力なjinja2かもしれません。

于 2012-07-25T09:49:54.627 に答える
6

web2pyも見ることをお勧めしますか?最も基本的なレベルでは、同僚に html ファイルを作成してもらい、データが必要な場所でそれを {{=var}} に置き換えるだけで、python 関数で記述された web2py コントローラーによって var を取得できます。関数からデータをまとめて、「return dict(var=var)」で html ビューに返すことができます。

ビューが次のようになっている場合:

<html>
    <head>
        <title>some title</title>
    </head>
    <body>
        <h1>{{=message}}</h1>
    </body>
</html>

コントローラーは次のようになります。

def index():
    message = "Hello World"
    return dict(message=message)

他の人が言及しているように、djangoを使用することもできますが、web2pyドキュメントのリンクを確認してください

于 2012-07-25T10:37:44.403 に答える