从cakephp中的关联数据库中检索数据

chanu19

我有一个条目与users_id作为外键的表用户表。

我已经在EntriesTable中设置了belongsTo关联,如下所示:

$this->belongsTo('Users', [
    'foreignKey' => 'user_id',
    'joinType' => 'INNER'
]);

之后,我在EntriesController中编写了此代码:

$entries = TableRegistry::get('Entries');
$query = $entries->findByTitle($title)
    ->contain(['Users']);
$entry = $query->first();
$this->set('entry', $entry);

在条目的视图模板我要显示的用户名与写入输入的用户的领域。

我知道在CakePHP 1的早期版本中,我可以只写$ entry ['User'] ['username']来检索编写条目的用户的用户名。现在我正在使用CakePHP 3.6,它似乎无法正常工作。我如何在CakePHP 3中执行相同的任务?

Alimon Karim |

您可以像下面这样写

在控制器中

public function view($title)
{
    $entry = $this->Entries->findByTitle($title)->contain(['Users']);
    $entry = $entry->first();
    $this->set('entry', $entry);
}

要么

public function view($title)
{
    $query = $this->Entries->find('all', [
        'where' => ['Entries.title' => $title],
        'contain' => ['Users']
    ]);
    $entry = $query->first();

    $this->set('entry', $entry);
}

视野中

<?= $entry->user->username ?>

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章