【发布时间】:2018-07-21 01:59:30
【问题描述】:
为简单起见,假设我有 3 个表:menu、page 和一个联结表 menu_page。
因此,如果我想获取页面“主页”可用的所有菜单,我在模型中定义了一个关系:
public function getAllMenus() {
return $this->hasMany(Menu::className(), ['id' => 'menu_id'])->viaTable(PageMenu::tableName(), ['page_id' => 'id']);
}
但是现在我们在菜单表中添加了一个名为show_all_pages的属性,如果设置为1,则应该返回菜单,否则我们应该检查菜单是否可以在主页上使用。
有没有办法在这里添加这个条件?
【问题讨论】:
-
您希望它全局集成到关系中还是任何特定的
controller或action都需要它? -
在关系中
-
下面的答案应该可以工作
标签: php yii2 yii2-model