sql >> Base de Datos >  >> RDS >> Mysql

Laravel 5:sincronizando un campo adicional a través de pivote

En realidad estás bastante cerca. El formato requerido es:

[
    98 => ['company_id' => 129],
    99 => ['company_id' => 130],
    100 => ['company_id' => 131]
]

Esto debería generar la matriz correcta:

$extra = array_map(function($companyId){
    return ['company_id' => $companyId];
}, $allCompanyIds);

$data = array_combine($allPositionIds, $extra);

$user->positions()->sync($data);