Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/vb.net/17.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
创建视图(cakePHP noob)_Cakephp - Fatal编程技术网

创建视图(cakePHP noob)

创建视图(cakePHP noob),cakephp,Cakephp,我一直在阅读,直到我的眼睛肿了,并且很难找到一个简单的答案 我不是PHP新手,但我是cakePHP新手。请容忍我,并对我对术语缺乏了解的无知保持耐心 我被要求帮助对最近创建的cakePHP开发的站点进行一些修复 网站缺少“”的页面。我可以在UserController中看到需要访问的函数,但我不确定将.ctp文件放在何处以生成视图 假设我希望logout.ctl文件简单如下: 呼应“你好世界” 在“我的应用程序/视图”文件夹下,我有我试图将此文件放入的子文件夹“主文件夹”和“用户”。我假设我也必

我一直在阅读,直到我的眼睛肿了,并且很难找到一个简单的答案

我不是PHP新手,但我是cakePHP新手。请容忍我,并对我对术语缺乏了解的无知保持耐心

我被要求帮助对最近创建的cakePHP开发的站点进行一些修复

网站缺少“”的页面。我可以在UserController中看到需要访问的函数,但我不确定将.ctp文件放在何处以生成视图

假设我希望logout.ctl文件简单如下: 呼应“你好世界”

在“我的应用程序/视图”文件夹下,我有我试图将此文件放入的子文件夹“主文件夹”和“用户”。我假设我也必须做一些其他的事情,但我无法确定那是什么


感谢您的帮助。谢谢你的阅读

1.默认情况下,您应该通过创建
Views/controller/action.ctp
将视图和控制器链接在一起

由于url通过路由链接到控制器,因此视图不直接与其关联

例如,如果已设置

Router::connect('/logout/', array('controller' => 'User', 'action' => 'logout'));
Router::connect('/logout/', array('controller' => 'Home', 'action' => 'logout'));
,则可能需要创建视图/User/logout.ctp

如果你有

Router::connect('/logout/', array('controller' => 'User', 'action' => 'logout'));
Router::connect('/logout/', array('controller' => 'Home', 'action' => 'logout'));
,则可能需要创建视图/Home/logout.ctp

2.您可以使用
$this->view='sample'
$this->render('sample')更改操作中的视图
然后创建名为
sample.ctp
的视图文件

3.您还可以使用
$this->render('/Sample/logout')读取另一个文件夹的视图。
参考:

4.如果使用主题
$this->theme='Example'
,默认视图文件将设置为
/app/view/Themed/Example/Posts/edit.ctp
。 参考:


5.我认为cakephp视图文件的默认扩展名是
.ctp
,而不是
.ctl
.ctl
是否由Microsoft Visual Studio使用?我不太确定。

看起来我唯一缺少的是实际路径应该是/user/logout,而不仅仅是/logout。。。啊!这仍然只是让我采取了行动,在那种情况下,这很好。在后来的另一个问题中,我仍然需要访问一个新视图,所以我仍然需要解决这个问题。我在UserController中找到了一个数组$this->Security->unlockdactions,其中列出了所有视图。我在那里添加了我的页面。你可以使用方法3(通过调用$this->render*('/sample/sample')来设置你在操作中读取的视图。基本上,你可以将视图文件放在任何你想要的地方,并使用这个技巧。如果你使用默认设置,请使用cake read Views/.ctp。