31 05 2013 Python javascript Tweet
PythonScriptでhtmlテンプレートを使いたいなぁと思ったのでHandlebarsを使ってみた。
index.jade
!!! 5 html head meta(charset='utf-8') meta(name='viewport', content='width=device-width') title Handlebars demo link(rel='stylesheet', href='stylesheets/app.css') script(src='javascripts/vendor/custom.modernizr.js') body .row .large-12 h2 PythonScript with Handlebars hr script(src='javascripts/jquery.js') script(src='javascripts/handlebars.js') script(src='javascripts/pythonscript.js') script(src='javascripts/jquery.py.js') script(src='javascripts/app.py.js') script(src='javascripts/foundation/foundation.js') script $(document).foundation();
app.py
テンプレートをhtmlのscriptから取れなかったのでベタ書きした。あと",'の扱いが0.7.4でおかしくなってる。
source = "<h3>{{title}}</h3><div>{{body}}</div>" template = JS("Handlebars.compile(source)") title = "ひげひげひげ" body = "セクシーコマンドー外伝" data = JS("template({title:title,body:body})") J("body .row ").append(data)
ちょっと試した感じではラップすればjavascriptを意識せずに使えそう。scriptタグでテンプレートが読み込めない問題は困るが。