我有以下用于生成HTML的Genshi HTML模板代码段。
<div>
${'Hello {name}'.format(name='foo')}
</div>
由于字符串中的花括号,Genshi对此进行了拟合。
Traceback (most recent call last):
File "C:\Python36\lib\site-packages\genshi\input.py", line 161, in _generate
self.expat.Parse(data, False)
xml.parsers.expat.ExpatError: not well-formed (invalid token): line 137, column 34
是否有一种方法可以摆脱花括号?我应该使用比${...code...}
语法更好的东西吗?
答案 0 :(得分:1)
除非您要执行更复杂的操作(代码/功能),否则可以执行以下操作:
<div>
Hello ${name} // or just Hello $name
</div>
对于复杂的事物,请使用code block syntax:
<div>
<?python
def greeting(name):
return 'Hello {name}'.format(name=name) ?>
${greeting('foo')}
</div>