在 Zend Framework2 中添加新的 view/phtml 文件
Adding new view/phtml file in Zend Framework2
我想在我的索引文件夹中添加一个新的 phtml 文件,其中我已经有多个视图:
index
landing
等等...我使用以下逻辑访问它们:
sitename.com/index/landing
或
sitename.com/index/index
如何将 phtml 文件(我的新视图)添加到我的索引文件夹中,以便我在浏览器中输入时能够看到它:
sitename.com/index/mynewview
我对整个 Zend Framework 还很陌生,我不确定这个结构究竟是如何工作的,所以我想了解更多。你们能帮我解决这个问题吗,我应该怎么做?
非常感谢! :)
P.S。这些视图位于以下目录结构中:
module/application/view/application/index/
然后这里是所有视图,这是我想添加新视图并从浏览器访问它的地方,如下所示:
/index/testview
编辑:
当我将 testview.phtml 添加到索引目录并在其中放入一些测试标签时:
<h1> Testing new view page </h1>
它没有在浏览器上呈现
因为这是一个 MVC 框架,所以您将跳过几个步骤。你可能会得到一些严厉的回应,但我会尽快为你填补漏洞。
暂时忽略文件夹结构。
这是一条路线:
/index/landing
路由指向 Controllers
内部的 Actions
以工作。
假设您已经开始使用骨架,打开模块的 module.config.php,您应该会看到路由配置,例如:
https://github.com/zendframework/ZendSkeletonApplication/blob/master/module/Application/config/module.config.php#L29
您需要为要提供服务的路由添加配置条目。它可以像 /index/landing 的 Literal
条目一样简单,也可以是处理路由模式的更复杂的东西(Segments、Regex 等)。花一些时间在这里修补和学习;路由对于使用 MVC 非常重要。
配置路由时,假设你设置了一个Controller,并且这个Controller有一个Action(你的路由指向的)。该操作是您可以将模板文件(phtml、twig 等)连接到路由的地方:
// dummy action that serves index/testview
public function fooAction(){
$vm = new Zend\View\Model\ViewModel();
$vm->setTemplate('index/testview');
return $vm;
}
那个 index/testview 将在您模块的视图模板中,而不是在您的 public 文件夹中。
我认为这是一本合理的入门书,可以帮助您上路!
花点时间学习:
http://zf2.readthedocs.io/en/latest/index.html#userguide
也许从这里开始:
http://zf2.readthedocs.io/en/latest/in-depth-guide/understanding-routing.html
ZF2(V3来了!)是个好东西,值得。
祝你好运。
我想在我的索引文件夹中添加一个新的 phtml 文件,其中我已经有多个视图:
index
landing
等等...我使用以下逻辑访问它们:
sitename.com/index/landing
或
sitename.com/index/index
如何将 phtml 文件(我的新视图)添加到我的索引文件夹中,以便我在浏览器中输入时能够看到它:
sitename.com/index/mynewview
我对整个 Zend Framework 还很陌生,我不确定这个结构究竟是如何工作的,所以我想了解更多。你们能帮我解决这个问题吗,我应该怎么做?
非常感谢! :)
P.S。这些视图位于以下目录结构中:
module/application/view/application/index/
然后这里是所有视图,这是我想添加新视图并从浏览器访问它的地方,如下所示:
/index/testview
编辑:
当我将 testview.phtml 添加到索引目录并在其中放入一些测试标签时:
<h1> Testing new view page </h1>
它没有在浏览器上呈现
因为这是一个 MVC 框架,所以您将跳过几个步骤。你可能会得到一些严厉的回应,但我会尽快为你填补漏洞。
暂时忽略文件夹结构。
这是一条路线:
/index/landing
路由指向 Controllers
内部的 Actions
以工作。
假设您已经开始使用骨架,打开模块的 module.config.php,您应该会看到路由配置,例如: https://github.com/zendframework/ZendSkeletonApplication/blob/master/module/Application/config/module.config.php#L29
您需要为要提供服务的路由添加配置条目。它可以像 /index/landing 的 Literal
条目一样简单,也可以是处理路由模式的更复杂的东西(Segments、Regex 等)。花一些时间在这里修补和学习;路由对于使用 MVC 非常重要。
配置路由时,假设你设置了一个Controller,并且这个Controller有一个Action(你的路由指向的)。该操作是您可以将模板文件(phtml、twig 等)连接到路由的地方:
// dummy action that serves index/testview
public function fooAction(){
$vm = new Zend\View\Model\ViewModel();
$vm->setTemplate('index/testview');
return $vm;
}
那个 index/testview 将在您模块的视图模板中,而不是在您的 public 文件夹中。
我认为这是一本合理的入门书,可以帮助您上路!
花点时间学习: http://zf2.readthedocs.io/en/latest/index.html#userguide
也许从这里开始: http://zf2.readthedocs.io/en/latest/in-depth-guide/understanding-routing.html
ZF2(V3来了!)是个好东西,值得。
祝你好运。