根据字段的 type 的不同,关联不同的模型该怎么写

如果表 A type 值 是 1 就关联 B 表 如果 A 的 type 是 2 则关联 C 表

        public function test()
        {
            if($this->type == 1) {
                return $this->hasOne(A::class, 'order_id', 'order_no');
            } else {
                return $this->hasOne(B::class, 'order_id', 'order_no');
            }
        }

我照上面这样写不行

dd($this->id) 的值为 null

控制器里是这样写的

$data = A::with('test')->get();

求大神指点!!再此先谢过

《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《L02 从零构建论坛系统》
以构建论坛项目 LaraBBS 为线索,展开对 Laravel 框架的全面学习。应用程序架构思路贴近 Laravel 框架的设计哲学。
讨论数量: 4
xiao

先在这里谢过了,我们数据库设计和多态有点区别 我们是 类型在 [1,2,3] 关联一个模型 A [3,4] 关联另一个模型 B 。。多态好像只试用只有一个值的情况

6年前 评论
xiao

@moxiaomo 先在这里谢过了,我们数据库设计和多态有点区别 我们是 类型在 [1,2,3] 关联一个模型 A [3,4] 关联另一个模型 B 。。多态好像只试用只有一个值的情况

6年前 评论

楼主解决了吗

5年前 评论
xiao (楼主) 5年前
xiao (楼主) 5年前