【发布时间】:2013-09-10 01:37:39
【问题描述】:
我选择了 PHPTAL(来自 PHPMustache 之后),我正在尝试将一个 ViewModel 类 Mustache-style 注入到我的模板中。让我解释一下..
控制器
$viewmodel = new \Viewmodel\Home();
$template = new \PHPTAL('application/views/home.html');
$template->viewmodel = $viewmodel;
echo $template->execute();
home.html
<p>Hello <strong>${viewmodel/test}</strong>.</p>
Home.php
namespace Viewmodel;
class Home {
function test() {
return "world";
}
}
上述工作,但是如何避免在每个变量引用前加上“viewmodel/”?
使用 Mustache,您的变量上下文可以是单个类。例如。 echo $template->render($html, $viewmodel);。不需要前缀。所有的 meat 都在一个松散耦合的视图模型中。我想用 PHPTAL 强制执行此行为,而不必将整个类显式分配给变量名。
【问题讨论】: