为什么没有工作按“作者”排序?不抛出任何错误,只是未分类
function index()
{
$this->paginate = array(
'limit' => 5,
'order' => array(
'Post.id' => 'asc',
),
'fields' => array('Post.id', 'Post.title', 'User.name AS aut_name'),
'joins' => array(
array(
'table' =>'users',
'alias' =>'User',
'type' =>'LEFT',
'conditions' => array(
'Post.author = User.id'
)
)
)
);
$posts = $this->paginate();
$this->set('posts', $posts);
}
<tr>
<th><?php echo $paginator->sort('ID', 'id'); ?></th>
<th><?php echo $paginator->sort('Author', 'User.name'); ?></th>
<th><?php echo $paginator->sort('Tilte', 'title'); ?></th>
<th>Actions</th>
</tr>
答案 0 :(得分:1)
代码建议将User.name字段作为“aut_name”返回,也可以将sort参数设置为使用该字段名称?
<th><?php echo $paginator->sort('Author', 'aut_name'); ?></th>
答案 1 :(得分:1)
也许你应该这样做 在控制器中:
'fields' => array('Post.id', 'Post.title', 'User.name')
在视图中:
<th><?php echo $paginator->sort('Author', 'User.name'); ?></th>