Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/279.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:index()的分页列表中的相关值_Php_Model View Controller_Cakephp_Pagination - Fatal编程技术网

CakePHP:index()的分页列表中的相关值

CakePHP:index()的分页列表中的相关值,php,model-view-controller,cakephp,pagination,Php,Model View Controller,Cakephp,Pagination,我试图编辑一个索引函数来显示索引模型与之有很多关系的对象 换言之,如果满嘴都是,我会尝试将“烘焙视图”视图中可能出现的相关值显示在主对象后面的表行的索引视图中 我很抱歉,如果我缺乏更好地解释这一点的方言,但我的示例代码可能会有所帮助 我试图从view.ctp中获取代码片段,并将其插入index.ctp的foreach循环中,但没有成功。很明显,我错过了大部分必要的东西 我的主要对象是具有多种状态的项目。我没有在控制器或模型中做任何事情来实现这一点,我认为这只是视图编辑 index.ctp:

我试图编辑一个索引函数来显示索引模型与之有很多关系的对象

换言之,如果满嘴都是,我会尝试将“烘焙视图”视图中可能出现的相关值显示在主对象后面的表行的索引视图中

我很抱歉,如果我缺乏更好地解释这一点的方言,但我的示例代码可能会有所帮助

我试图从view.ctp中获取代码片段,并将其插入index.ctp的foreach循环中,但没有成功。很明显,我错过了大部分必要的东西

我的主要对象是具有多种状态的项目。我没有在控制器或模型中做任何事情来实现这一点,我认为这只是视图编辑

index.ctp:

    <?php
$i = 0;
foreach ($projects as $project):
    $class = null;
    if ($i++ % 2 == 0) {
        $class = ' class="altrow"';
    }
?>
<tr<?php echo $class;?>>
    <td><?php echo $project['Project']['id']; ?>&nbsp;</td>
    <td><?php echo $project['Project']['name']; ?>&nbsp;</td>
    <td>
        <?php echo $this->Html->link($project['Brand']['name'], array('controller' => 'brands', 'action' => 'view', $project['Brand']['id'])); ?>
    </td>
    <td>
        <?php echo $this->Html->link($project['Jobtype']['name'], array('controller' => 'jobtypes', 'action' => 'view', $project['Jobtype']['id'])); ?>
    </td>
    <td><?php echo $project['Project']['job_number']; ?>&nbsp;</td>
    <td><?php echo $project['Project']['created']; ?>&nbsp;</td>
    <td><?php echo $project['Project']['hours_to_date']; ?>&nbsp;</td>
    <td><?php echo $project['Project']['number_of_concepts']; ?>&nbsp;</td>
    <td><?php echo $project['Project']['number_of_resizes']; ?>&nbsp;</td>
    <td><?php echo $project['Project']['requires_ia']; ?>&nbsp;</td>
    <td><?php echo $project['Project']['requires_tech']; ?>&nbsp;</td>
    <td><?php echo $project['Project']['requires_seo']; ?>&nbsp;</td>
    <td><?php echo $project['Project']['complexity_level']; ?>&nbsp;</td>
    <td><?php echo $project['Project']['vendor_name']; ?>&nbsp;</td>
    <td><?php echo $project['Project']['team_members']; ?>&nbsp;</td>
    <td class="actions">
        <?php echo $this->Html->link(__('View', true), array('action' => 'view', $project['Project']['id'])); ?>
        <?php echo $this->Html->link(__('Edit', true), array('action' => 'edit', $project['Project']['id'])); ?>
        <?php echo $this->Html->link(__('Delete', true), array('action' => 'delete', $project['Project']['id']), null, sprintf(__('Are you sure you want to delete # %s?', true), $project['Project']['id'])); ?>
    </td>
</tr>
<tr>
    <td colspan="16">
        <div class="related">
            <?php if (!empty($project['Status'])):?>
            <table cellpadding = "0" cellspacing = "0">
            <tr>
                <th><?php __('Id'); ?></th>
                <th><?php __('User Id'); ?></th>
                <th><?php __('Project Id'); ?></th>
                <th><?php __('Created'); ?></th>
                <th><?php __('Percentage Complete'); ?></th>
                <th><?php __('Status'); ?></th>
                <th class="actions"><?php __('Actions');?></th>
            </tr>
            <?php
                $i = 0;
                foreach ($project['Status'] as $status):
                    $class = null;
                    if ($i++ % 2 == 0) {
                        $class = ' class="altrow"';
                    }
                ?>
                <tr>
                                         <?php echo $class;?>>
                    <td><?php echo $status['id'];?></td>
                    <td><?php echo $status['user_id'];?></td>
                    <td><?php echo $status['project_id'];?></td>
                    <td><?php echo $status['created'];?></td>
                    <td><?php echo $status['percentage_complete'];?></td>
                    <td><?php echo $status['status'];?></td>
                    <td class="actions">
                        <?php echo $this->Html->link(__('View', true), array('controller' => 'statuses', 'action' => 'view', $status['id'])); ?>
                        <?php echo $this->Html->link(__('Edit', true), array('controller' => 'statuses', 'action' => 'edit', $status['id'])); ?>
                        <?php echo $this->Html->link(__('Delete', true), array('controller' => 'statuses', 'action' => 'delete', $status['id']), null, sprintf(__('Are you sure you want to delete # %s?', true), $status['id'])); ?>
                    </td>
                </tr>
            <?php endforeach; ?>
            </table>
        <?php endif; ?>
        </div>
    </td>
</tr>

提前谢谢。欢迎任何回复或提示。

如果您需要每条记录的相关数据

你应该设置

$this->recursive = 1 // or 2;

并调用正则分页方法;每个记录现在都将包含相关数据。

您会收到什么错误消息?并在ProductsController中发布索引方法的代码。