Laravel - mettre à jour la relation du modèle avec un autre modèle
<p>Il existe une relation plusieurs-à-plusieurs entre le modèle d'événement et le modèle de patient. Un incident peut impliquer plusieurs patients, et un patient peut être impliqué dans plusieurs incidents. </p>
<p>Si l'utilisateur crée une copie du modèle de patient, nous souhaitons pouvoir fusionner les deux modèles de patient en un seul. Cela signifie que je souhaite déplacer les événements impliquant le patient 1 vers le patient 2, y compris d'autres attributs sur le tableau croisé dynamique. </p>
<p>J'ai essayé des choses simples</p>
<pre class="brush:php;toolbar:false;">Casualty::where('patient_id', $patientOne->getKey())->update(['patient_id' => $patientTwo- >getKey()]);</pre>
<p>Mais ça ne marche pas. L'utilisation de la méthode <code>updateOnExistingPivot()</code> signifie que je dois parcourir chaque événement pour le patient 1 et exécuter une requête de base de données distincte pour mettre à jour le patient vers le patient 2. </p>
<p>J'ai également essayé de mettre à jour l'enregistrement comme ceci</p>
<pre class="brush:php;toolbar:false;">$patientOne->incidents()->update(['patient_id' => $patientTwo->getKey()]);< /pré>
<p>Cela ne fonctionne pas non plus car il n'y a pas de colonne <strong>patent_id</strong> </p>
<p>Comment puis-je y parvenir ou est-ce que je fais quelque chose de mal ? </p>