csv ファイルを 経由csv.DictReader
で Mako に渡しています。ディクショナリはキーに行ヘッダーを使用します。これらの一部には、「エントリ ID」などの名前が付いています。テンプレートでこれらの複数単語のキーを参照しようとすると、Mako でエラーが発生します。具体的には、エラー メッセージは次のとおりですmako.exceptions.SyntaxException: (SyntaxError) invalid syntax (<unknown>, line 1)
。
次のコードは、私が経験している問題を示しています。
from mako.template import Template
mydata = {'foo': 'bar', 'better foo': 'beach bar'}
working_template = Template("Let's go to the ${foo}")
fail_template = Template("Let's go to the ${better foo}")
# this works
print working_template.render(**mydata)
# this generates an Exception
print fail_template.render(**mydata)
複数単語キーのスペースをエスケープする方法はありますか?