JADE/SCALATE模板错误-InvalidSyntaxException

JADE/SCALATE模板错误-InvalidSyntaxException,scala,pug,scalatra,scalate,Scala,Pug,Scalatra,Scalate,我正在尝试Jade(通过Scalate),但遇到了一个无法找到答案的错误。(或者,至少没有看到)我用BlueGriffon模拟了一个表单(我已经多年没有编写HTML了…),并将生成的HTML放入Aarron Powel的HTML-JADE转换器中。以下是my.jade模板文件中的顶部部分或翻译: 溴 表单(method='POST',action='/account/create',name='userAccountDetails') |用户名: 输入(required='required',n

我正在尝试Jade(通过Scalate),但遇到了一个无法找到答案的错误。(或者,至少没有看到)我用BlueGriffon模拟了一个表单(我已经多年没有编写HTML了…),并将生成的HTML放入Aarron Powel的HTML-JADE转换器中。以下是my.jade模板文件中的顶部部分或翻译:


表单(method='POST',action='/account/create',name='userAccountDetails')
|用户名:
输入(required='required',name='username',type='text')

等等等等

尝试运行嵌套此内容的scala应用程序会生成以下错误:

org.fusesource.scalate.InvalidSyntaxException:
)“应为,但在5.19中找到”
位于org.fusesource.scalate.scaml.ScamlParser.parse(ScamlParser.scala:375)
位于org.fusesource.scalate.jade.JadeCodeGenerator.generate(JadeCodeGenerator.scala:38)

它似乎不喜欢comman sperated属性,但我不知道为什么。同样,在stacktrace片段中,它似乎引入了Scaml解析器,即使文件扩展名为.jade


有人能给我指出正确的方向吗?谢谢。

对于任何人来说,这个问题(至少对我来说)似乎是由于JADE的Scala/Scalatra和JavaScript/NodeJS实现之间的语法差异造成的。幸运的是,我在搜索JADE示例时发现了后者——无论是在实用程序方面,还是在论坛问答方面——这都表明了使用逗号的必要性

解决方案:删除逗号,一切正常:


h2新帐户设置
br
表单(method='PUT'action='/account/create')


编辑:更准确地说,差异实际上存在于Scalatra集成的Scalate(Scala模板引擎)中。(可能还有其他一些基于JADE的scala库遵循原始语法。)

是的,我只是在这个问题上浪费了一些时间:/