CakePHP视图未呈现

CakePHP视图未呈现,php,cakephp,Php,Cakephp,我有一个由CakePHP烘焙的基本应用程序 现在,我想在我的模型控制器类中添加一个新操作“listjobs”,并在/Template/Job/listjobs.ctp中添加一个相应的“listjobs”视图 从模型的索引视图中,我在侧导航栏中添加了一个操作。 像这样 <li><?= $this->Html->link(__('View Jobs'),['action' => 'listjobs']) ?></li> ctp包含一个非常基本的

我有一个由CakePHP烘焙的基本应用程序

现在,我想在我的模型控制器类中添加一个新操作“listjobs”,并在/Template/Job/listjobs.ctp中添加一个相应的“listjobs”视图

从模型的索引视图中,我在侧导航栏中添加了一个操作。 像这样

<li><?= $this->Html->link(__('View Jobs'),['action' => 'listjobs']) ?></li>
ctp包含一个非常基本的代码,如下所示

<div class="actions columns large-2 medium-3">
     <h3><?= __('Actions') ?></h3>
    <ul class="side-nav">
        <li>< Git Hub >

        </li>
        <li>< Stack overflow >

        </li>
    </ul>
</div>

  • <堆栈溢出>
无法找出为什么不渲染视图,而是渲染索引视图

按顺序根据chrome控制台加载链接

(一)

(二)

所以(1)应该和视图一起加载..它不应该被重定向到(2)

问候,,
Saurav

我认为你需要这样使用

<li><?php echo $this->Html->link('View Jobs',array('controller' => 'MyModel', 'action' => 'listjobs')); ?></li>
我认为您不需要渲染,您的视图将在默认情况下进行渲染,您将需要发送类似于
$this->set(compact('VarName'))的数据

其次是
$this->log(“内部列表作业”,“调试”)如果日志是一种方法,那么您需要设置操作,然后它将是

$this->setAction('log');
试试看,如果你有错误,那就告诉我。如果你的工作正常的话,你的观点就行了

此链接定义

查看并研究此页面


谢谢

好的……我对cakephp框架代码进行了一些调试。 我使用了一个auth组件来实现我的登录功能

我发现新添加的操作不允许通过auth组件的过滤器。因此,我在appcontroller的beforefilter方法中添加了新添加的操作,如下所示。我猜默认情况下,crud操作已经添加到过滤器中

$this->Auth->allow(['index', 'view', 'display','listjobs','add','delete']);
干杯


Saurav

它不会进入你的链接?或者不生成任何数据?请添加更多的信息,并考虑发布您的控制器ListPoSts()方法代码感谢阿里亚和Alimon…它不会指向我的链接,我已经用listjobs()的代码编辑了这篇文章,所以:它生成了什么链接?它去哪里了?这是我在chrome控制台中看到的。首先它去哪里,然后它去哪里,job是我的模型名是的,因此控制器名将是MyModelControlleries。我尝试了查看代码,但它不起作用…然后我显式地使用了这个->渲染,但仍然不起作用感谢持久的帮助…日志刚刚使用cakephp日志apisdid…但它不起作用…如果添加新操作,是否必须更改routes.php文件?您有一个非常小的问题,请遵循此小教程,那么也许你会解决你的问题。:)
$this->setAction('log');
$this->Auth->allow(['index', 'view', 'display','listjobs','add','delete']);