很多时候,我们建表后是需要与其他表进行互动的,它们是有关联的。 比如:人表与宠物表,一个人会有宠物,而且不止一个。 这个时候,人就是主表,宠物就是子表。
步骤
- 需要在子表数据库表中加入字段 base_id(int类型,字段名称可自定义:在模型中重写parentField 方法即可)
在父控制器中加入以下方法
protected function childControllers(): array
{
return [
//调用子控制器的静态方法make
Pets::make()
];
}
在子控制器中加入以下方法
protected function parentController(): ?object { //调用父控制器的静态方法make return User::make(); }
生成示例
1.父控制器列表
2.点击所有宠物,打开子页面列表
3.子页面点击修改与添加