如何从$allposts=$this-&;gt;paginate(&;#39;Post&;#39;);获取用户名,其中USER_ID是POSTS表的外键? [英] CakePHP-2.0 How can i get the username from $allposts=$this->paginate('Post'); where user_id is foreign key of posts table?
本文介绍了如何从$allposts=$this-&;gt;paginate(&;#39;Post&;#39;);获取用户名,其中USER_ID是POSTS表的外键?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在使用CakeDC-USERS插件。
<?php
class Post extends AppModel {
public $useTable='posts';
public $belongsTo = array('User');
public $hasMany=array('Comment');
}
我不得不使用分页:
$allposts=$this->paginate('Post');
我可以通过以下方式获取用户ID:
foreach ($allposts as $post) {
debug($post['Post']['user_id']);
但我需要用户名,而不是用户ID。如何获取用户名?
推荐答案
默认情况下,CakPHP的可包含功能会隐藏所有关联的模型:http://book.cakephp.org/2.0/en/core-libraries/behaviors/containable.html
如果只想添加关联模型的一个字段,可以使用以下语法:
$allposts = $this->Post->find('all', array('contain' => 'User.username'));
或者在您的控制器类中使用以下代码:(http://book.cakephp.org/1.3/en/view/1232/Controller-Setup)
var $paginate = array('contain' => 'User.username');
尝试以下操作以访问它:
$post['User']['username'];
这篇关于如何从$allposts=$this-&;gt;paginate(&;#39;Post&;#39;);获取用户名,其中USER_ID是POSTS表的外键?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文