- 论坛徽章:
- 1
|
有个小应用之前是用 Dancer + Template 写的。打算改成 Text::Xslate 练手。
在 layout/main.tt 中有一个设置用户名的地方,原先的代码是 [% session.logged_in_user %],现在改成 <: $session.logged_in_user :>,会报错。
我尝试输出<: $session | dump :>,看到结果是:{ 'id' => 123, 'logged_in_user' => 'abc', ...},Dancer::Session::YAML这样子。然后再尝试输出 <: $session.id :> 得到 123,logged_in_user就不行。
在 github 上找到两个 repo,他们都是在 before_template { my $token = shift; ...} 里先把 $session->{'username'} 存成 $token->{session_username},然后模板里输出 <: $session_username :>。
求大神们讲解一下原因?如果一定得这样来传递的话,session在xslate里可太不好用了,…… |
|