Model view controller 在应用程序中使用partials(如何正确设置控制器?)
我想构建一个应用程序(e-shop),其中每个块(部分)都可以单独呈现(使用pAJAX为这些块提供服务),但同时,如果直接请求,我希望获得整个页面。让我举例说明 电子商店目录页由以下部分组成:Model view controller 在应用程序中使用partials(如何正确设置控制器?),model-view-controller,controllers,partials,phalcon,Model View Controller,Controllers,Partials,Phalcon,我想构建一个应用程序(e-shop),其中每个块(部分)都可以单独呈现(使用pAJAX为这些块提供服务),但同时,如果直接请求,我希望获得整个页面。让我举例说明 电子商店目录页由以下部分组成: 产品 新闻 页脚 推车 电子商店索引页由以下部分组成: 文章 新闻 页脚 推车 电子商店产品页面由以下部分组成: 产品 新闻 页脚 推车 因此,如果我请求“/catalog/robots”,我会得到一个包含所有渲染块的页面,但当我请求“/block/cart”时,我只希望得到cart部分上的内容 如何正确
class IndexController extends \Phalcon\Mvc\Controller {
use CartController;
use NewController;
....
}
我怎样才能设计出一切都能按我的计划工作呢?我可能会有一堆非常精简的控制器,扩展一个更强大的基本控制器
class ShopBaseController extends \Phalcon\Mvc\Controller {
public function getNews( $limit=10 )
{
$news = \App\News::find(
'query stuff here'
,'limit'=>$limit
);
$this->view->setVar('news', $news);
}
public function getProducts( ... ){ ... }
public function getCart( ... ){ ... }
public function getSpecials( ... ){ ... }
}
class IndexController extends ShopBaseController {
public function indexAction(){
$this->getNews(10);
$this->getProducts(array(
// product params
));
$this->getCart();
$this->getSpecials();
}
}
class CatalogController extends ShopBaseController {
public function indexAction(){
$this->getNews(5);
$this->getProducts(array(
// product params
));
$this->getCart();
$this->getSpecials();
}
}
然后是景色
<div>
<?=$this->partial('blocks/news', array( 'news'=>$news ))?>
</div>
etc我不想成为“脾气暴躁的抢分者”,但看起来你是新来的,所以如果某件事对你有帮助,通常会接受答案和/或加上分数,谢谢:)