我知道如何使用元素在布局上渲染多个视图。
我想问的是,我说有多个控制器用于多种操作。例如,UsersController,ArticlesController和BooksController。假设我想从每个控制器中提取五个最新数据,并将它们放在一个布局中,就像在主页中一样。
你是怎么做到的?
答案 0 :(得分:1)
<强> PagesController.php 强>
class PagesController extends AppController {
public function initialize() {
parent::initialize();
$this -> loadModel('Users');
$this -> loadModel('Articles');
$this -> loadModel('Books');
}
public function home() {
$users = $this -> Users -> find('all') -> order(['Users.id' => 'desc']) -> limit(5);
$articles = $this -> Articles -> find('all') -> order(['Articles.id' => 'desc']) -> limit(5);
$books = $this -> Books -> find('all') -> order(['Books.id' => 'desc']) -> limit(5);
$this -> set(compact('users', 'articles', 'books'));
}
}
现在你可以看到最近5个用户,文章和书籍了 信息页/ Home.ctp 强>
答案 1 :(得分:0)
您应该为不同的控制器提取不同变量的数据。并在布局中使用这些变量。