我有一个这样的小部件:
class ShowNewsWidget extends Widget{
public function init(){
parent::init();
}
public function run(){
$news = NewsModel::findAll(['not in ','id',$array]);
/*
HERE SHOW THE NEWS
*/
}
}我在同一个页面中多次调用这个小部件(一个在布局中,一个在视图中,一个在控制器中,等等),并且我不需要在同一个页面上两次显示一条新闻。所以我认为应该使用“不在”的条件,但是我如何才能让这些小部件相互通信呢?使用单例?
Thx MS
发布于 2016-06-14 17:29:52
在Widget类中:
class ShowNewsWidget extends Widget{
public $exclude = []; // excluded news ids
public function run(){
$news = NewsModel::find()
->andFilterWhere(['not in ','id', $this->exclude])
->all();
}
}在视图中:
<?php echo ShowNewsWidget::widget([
'exclude' => [1, 3]
]); ?>https://stackoverflow.com/questions/37806884
复制相似问题