0

我可能错过了这一点,但我试图在我的索引中回显一个 HABTM 值,但我似乎无法获取数据。

例如,我可以毫无问题地回应这些关系:

<?php echo $plan['Age']['name']; ?> <br />

<?php echo $plan['Applicant']['name']; ?> <br />

从 Plan 模型上的 _id 递归关系可以看出。

希望我的问题很清楚。只是不知道该怎么做。无论我尝试使用何种变量组合,似乎都无法解决它。

4

2 回答 2

1

对于 HABTM,数组是数字索引的:

<?php echo $plan['Zip'][0]['value']; ?> <br />
<?php echo $plan['Zip'][1]['value']; ?> <br />
<?php echo $plan['Zip'][2]['value']; ?>

由于您在 Plan 模型上执行 find 调用,因此请确保您在 Plan 模型中定义 HABTM 关系,但最好在两个模型中定义。

呃……除非我记错了。可能是这样的结构:

<?php echo $plan['Plan']['Zip'][0]['value']; ?> <br />
<?php echo $plan['Plan']['Zip'][1]['value']; ?> <br />
<?php echo $plan['Plan']['Zip'][2]['value']; ?>

最好的办法是使用var_dump($plan)orprint_r($plan)并检查数组的结构。

于 2011-01-27T21:13:13.027 回答
0

感谢您的帮助:)我通过这样做解决了:

foreach($plan['Zip'] as $zip): 
echo $zip['title']; ?>
<?php endforeach; ?>

我的递归很深,所以我没有意识到我直接调用 Zip 表并运行 innde foreach 来解析 Zip 数组。

于 2011-01-27T22:27:02.313 回答