gpt4 book ai didi

mysql - cakePHP 3.0 一对多关系

转载 作者:行者123 更新时间:2023-11-29 22:27:50 26 4
gpt4 key购买 nike

我有一个项目表和一个图像表。

一个项目有很多图像,因此两个表之间是一对多的关系。

在 ImageView 中,我可以使用以下方法检索与图像相关的项目名称:

<?= $image->has('project') ? $this->Html->link($image->project->project_title, ['controller' => 'Projects', 'action' => 'view', $image->project->project_id]) : '' ?>

但现在我想对项目 View 执行相同的操作。我想显示与特定项目相关的所有图像。但这不起作用:

<?= $project->has('image') ? $this->Html->link($project->image->image_path, ['controller' => 'Images', 'action' => 'view', $project->image->image_path]) : '' ?>

或者我需要多对多关系吗?

最佳答案

解决方案

在项目表中:

$this->hasMany('Images', [
'foreignKey' => 'project_id',
'joinType' => 'INNER'
]);

在项目 Controller 中:

 $project = $this->Projects->get($id, [
'contain' => ['Categories', 'Users', 'Tags', 'Images']
]);

在项目中> view.ctp

<?php foreach ($project->images as $images): ?>
<p><?= h($images->image_path) ?></p>
<?php endforeach; ?>

关于mysql - cakePHP 3.0 一对多关系,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30101587/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com