Je suis en train d'utiliser un modèle pivot personnalisé comme:Laravel personnalisé Pivot Modèle manque champs
class A extends Model{
public function b()
{
return $this->belongsToMany(B::class)
->using(PivotAB::class);
}
class PivotAB extends Pivot{}
Lorsque vous accédez à PivotAB
par la relation le champ supplémentaire du tableau croisé dynamique est manquant (sortie de artisan tinker
):
>>>$q = A::all();
=> Illuminate\Database\Eloquent\Collection {#1385
all: [
App\Models\A {#1386
id: 1
},
],
}
>>> $q[0]->b[0]->pivot;
=> App\Models\PivotAB {#1389
a_id: 1,
b_id: 1,
}
>>> $q[0]->b[0]->pivot->custom_field;
=> null
Mais quand je questionne le modèle de pivot directement le champ se peuplé:
>>> PivotAB::all();
=> Illuminate\Database\Eloquent\Collection {#1382
all: [
App\Models\PivotAB{#281
a_id: 1,
b_id: 1,
custom_field: "abc",
},
],
}
Qu'est-ce qu'il me manque? Ai-je besoin de déclarer les champs de pivot quelque part?