具有多个外键的一对多关系 laravel

one to many relationship laravel with multiple foreign key

我正在与 Laravel 进行项目。

我有两个彼此处于一对多关系的数据库表。它们由三个条件连接。如何在 Eloquent 中对这种关系建模?

我不应该修改数据库模式,因为它必须与其他东西保持向后兼容。

我已经尝试了以下方法,但它不起作用。 拥有方:

use Illuminate\Database\Eloquent\Model;

class Route extends Model
{
    public function trips()
    {
        return $this->hasMany('Trip', 'route_name,source_file', 'route_name,source_file')
    }
}

反面:

使用Illuminate\Database\Eloquent\Model;

class Trip extends Model
{
    public function routes()
    {
        return $this->belongsTo('Route', 'route_name,source_file', 'route_name,source_file');
    }
}

我不想使用“使用 Awobaz\Compoships\Compoships;”

您需要为 hasMany()belongsTo 方法指定模型的命名空间。 类似于 'App\Models\Trip'Trip::class

class Route extends Model
{
    public function trips()
    {
        return $this->hasMany('App\Models\Trip', 'route_name,source_file', 'route_name,source_file')
    }
}
class Trip extends Model
{
    public function routes()
    {
        return $this->belongsTo('App\Models\Route', 'route_name,source_file', 'route_name,source_file');
    }
}