Laravel 8 动态关联

2021-07-19 11:39 更新

您可以使用 resolveRelationUsing 方法在运行时定义 Eloquent 模型之间的关系。 虽然通常不建议在常规应用程序开发中使用它,但是在开发 Laravel 软件包时,这有时可能会很有用:

use App\Models\Order;
use App\Models\Customer;

Order::resolveRelationUsing('customer', function ($orderModel) {
    return $orderModel->belongsTo(Customer::class, 'customer_id');
}); 

注意:定义动态关系时,请始终为 eloquent 的关联方法提供显式的键名。

以上内容是否对您有帮助:
在线笔记
App下载
App下载

扫描二维码

下载编程狮App

公众号
微信公众号

编程狮公众号