在游戏Scala模板系统上有三个问题。
只是澄清一下: 我假设您为要生成的每种页面创建一个新模板 - 这是正确的吗?那么,登录页面,帐户页面,主页等?这是否意味着我应该期待有相当多的模板?
如果我说存储订单的历史记录 - 使用带有OrderLog和order等类的java OO功能。可以在OrderLog.java中调用一个直接创建html文本的java方法,我只是将其传递给Scala模板,或者这是一个坏主意吗?我是否应该将对象提供给Scala引擎并将其翻译? 我想到的两个考虑因素是Scala在呈现文本方面是否更快,以及java是否构成字符串是不好的风格。
如何使用play框架呈现JSP?
答案 0 :(得分:1)
为了获得良好的设计和易用性,您可能需要一种模块化设计,其中重复的结构(例如页脚)具有自己的模板。有时,可以重复使用多个不同页面的大部分,您只应在所有页面上使用的模板中将其写下一次(还可以参数化模板以提供两个几乎相似的页面)。因此,您应该创建大量模板。将它们视为代码中的方法,有助于干燥(不要重复自己)和KISS(保持简单愚蠢),不试图解决一个模板中的所有问题或强制每个页面都有自己的模板实际上做与另一页相同的事情。
根据MVC模式,您应该保留视图的所有渲染详细信息(在本例中为模板)并将其保留在模型之外(OrderLog
)。在模板中执行它比在服务器端创建HTML并且所有HTML都集中在一个地方应该更简洁,因此对于新人来说更清楚 - 或者在使用此应用程序长时间休息之后自己更清楚。
您不应该使用JSP,只能使用模板引擎。它可以做普通JSP的一切,甚至更多。在服务器启动并运行并加载页面时(在开发模式下)将呈现模板。您可以不断更改POJO或模板,而无需重新发布应用程序或重新启动服务器以查看差异。