在Gorm 操作中,開發人員可能會遇到錯誤訊息,指示需要定義有效的外鍵或實現Valuer/關係掃描器介面。為了有效解決此錯誤,徹底的故障排除以及對資料模型和資料庫關係的理解至關重要。
在提供的場景中,ConfigurationDescription 模型包含一個 Location 字段,旨在與 LocationDescription 模型建立關係。然而,由於 Gorm 標籤不一致,Gorm 無法偵測外鍵關係。
仔細檢查提供的資料模型後,很明顯 ConfigurationDescription 中 Location 欄位的標籤被顛倒了。 foreignKey 標籤應指定連接到外部實體 (LocationID) 的本機鍵,引用標籤應命名外部實體 (ID) 的主鍵或唯一鍵。
要修正此問題,請執行下列操作應使用 ConfigurationDescription 中 Location 欄位的修正標籤設定:
Location LocationDescription `json:"location,omitempty" gorm:"foreignKey:LocationID;references:ID"`
此調整可確保 Gorm 能夠正確辨識 ConfigurationDescription 和位置說明。更正標籤後,用於在「尋找」中載入位置關係的「預先載入」操作應該如預期般運作。
以上是Gorm 關係錯誤:如何正確定義 Gorm 標籤中的外鍵?的詳細內容。更多資訊請關注PHP中文網其他相關文章!