Laravel - 將模型關係更新到另一個模型
P粉674999420
P粉674999420 2023-09-01 22:36:33
0
1
400

事件模型與病患模型之間存在多對多關係。一個事件可以涉及多個患者,一個患者也可以捲入多個事件。

如果使用者建立患者模型的副本,我們希望能夠將這兩個患者模型合併為一個。這意味著我想將患者 1 涉及的事件移至患者 2,包括資料透視表上的其他屬性。

我試過簡單的事

Casualty::where('patient_id', $patientOne->getKey())->update(['patient_id' => $patientTwo- >getKey()]);

但這行不通。使用 updateOnExistingPivot() 方法意味著我需要迭代患者 1 的每個事件並執行單獨的資料庫查詢以將患者更新為患者 2。

我也嘗試過像這樣更新記錄

$patientOne->incidents()->update(['patient_id' => $patientTwo->getKey()]);< /pre> 

這也不起作用,因為事件表上沒有 patent_id 欄位。

我可以如何實現這個目標,還是我做錯了什麼?

P粉674999420
P粉674999420

全部回覆 (1)
P粉244155277

不確定我是否理解您的意思,您想將更多患者歸入同一事故中嗎?您可以使用belongsToMany關係並建立資料透視表。然後,當您想要更新資料時,只需使用sync方法即可。

您也可以嘗試使用json_encode()將它們儲存在一列中,該列僅保存使用者 ID,稍後再檢索它們。

抱歉,無法提供更多信息,因為問題沒有得到很好的描述。

    最新下載
    更多>
    網站特效
    網站源碼
    網站素材
    前端模板
    關於我們 免責聲明 Sitemap
    PHP中文網:公益線上PHP培訓,幫助PHP學習者快速成長!