【问题标题】:CakePHP HABTM – List all related itemsCakePHP HABTM – 列出所有相关项目
【发布时间】:2012-06-11 14:53:22
【问题描述】:

我对 CakePHP 非常陌生(而且对 MVC 概念也不太陌生),我正在尝试构建一个在 eventsparticipants 之间具有 HABTM 关系的系统。我希望索引页面在表格中显示事件列表,每行的一个单元格包含完整的参与者列表。到目前为止,我的表格显示循环代码如下所示:

<?php foreach ($events as $event): ?>
<tr>
    <td><?php echo $event['Event']['id']; ?></td>
    <td><?php echo $event['Event']['title']; ?></td>
    <td><?php       
            foreach ($participants as $participant):
                echo $participant['Participant']['name'];
            endforeach;
        ?></td>
</tr>
<?php endforeach; ?>

我知道这是错误的,但我已经尝试了很多关于这个主题的变体(在我看来,所有这些变体都同样错误),例如$event['Participant']...,但没有任何效果。我知道答案很简单,但我不知道它是什么,四处搜索只会给出相似但不够相似的答案。我需要写什么?

【问题讨论】:

    标签: cakephp has-and-belongs-to-many


    【解决方案1】:

    考虑到recursive IS NOT 0 在您的控制器中,我会这样做。

    <?php foreach ($events as $event): ?>
    <tr>
        <td><?php echo $event['Event']['id']; ?></td>
        <td><?php echo $event['Event']['title']; ?></td>
        <td><?php       
            foreach ($event['Participant'] as $participant):
                echo $participant['name'];
            endforeach;
        ?></td>
    </tr>
    <?php endforeach; ?>
    

    这是未经测试的。因此,如果您在此解决方案上需要更多帮助,请告诉我。

    【讨论】:

    • 非常感谢。我之前独立提出了一个类似的解决方案,它似乎完全符合我的要求。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-06-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多