Django形式のテンプレートファイルにjsonデータを適用するコマンドラインツールdteを作った

  • 1
    いいね
  • 2
    コメント
この記事は最終更新日から1年以上が経過しています。

なぜ

動的に設定ファイルを作るときに単純な変数展開程度ならシェルスクリプトのヒアドキュメントで十分ですが、ループが必要になるとテンプレートエンジンを使いたくなってきます。

ということで、Djangoテンプレート言語のテンプレートファイルにjsonデータを適用するコマンドラインツールを作ってみました。

ソースは
https://github.com/hnakamur/dte
にあります。

インストール

OS X, Linux, WindowsではバイナリファイルをダウンロードすればOKです。

OS X

curl -O https://hnakamur.github.io/dte/download/darwin_amd64/dte

Linux 64bit

curl -O https://hnakamur.github.io/dte/download/linux_amd64/dte

Linux 32bit

curl -O https://hnakamur.github.io/dte/download/linux_386/dte

Windows 64bit

curl -O https://hnakamur.github.io/dte/download/windows_amd64/dte

Windows 32bit

curl -O https://hnakamur.github.io/dte/download/windows_386/dte

使い方の例

example/data.json

{
  "persons": [
    {"name": "Alice"},
    {"name": "Bob"},
    {"name": "Charlie"}
  ]
}

example/hello.tpl

{% for person in persons %}{% if not forloop.First %}
{% endif %}Hello, {{ person.name }}!{% endfor %}

実行例

$ ./dte -j example/data.json example/hello.tpl
Hello, Alice!
Hello, Bob!
Hello, Charlie!