We have moved our forum to GitHub Discussions. For questions about Phalcon v3/v4/v5 you can visit here and for Phalcon v6 here.

好奇怪的一个问题,beforeExecuteRoute 在执行时是先解析模板数据再执行这里的程序吗

我现在有一个模块命名为Admin(需要一定的角色权限才能访问),现在的问题是,在模板中我使用了一个变量{{username}},在没有登录时提示报错:

PHP Notice: Undefined variable: username in F:\Git\Phalcon\brand\apps\modules\admin\views\index\index.html.php on line 263

但我已经在控制器里面写好变量数据了,同时,如果不登录是不应该解析这个模板的,请问大家有遇到这个问题的吗?

没有登录就肯定没有username,肯定会报错。或者登录不登录做好判断,或者给username一个默认值。



10.3k

@shimengongyuan 这么低级的错误是不会犯的啦

  1. 已经给 username 默认值
  2. 没登录之前就不应该去解析模板而是直接跳转到登录页才对,而目前的情况是只有保证模板页没有问题才会跳转到登录页(奇怪的是这个地方,没搞清楚为什么)

谢谢你

贴代码看看。