簡體   English   中英

go-pg got 沒有關系 認為我的桌子上有關系

[英]go-pg got doesn't has relation thought on my table has relation

我與各省有聯系關系,這是我的結構

    Contact struct {
        tableName       struct{}    `pg:"contacts,discard_unknown_columns"`
        ID              int         `json:"id"`
        Address         string      `json:"address"`
        BuildingType    string      `json:"building_type"`
        BuildingNumber  float64     `json:"building_number"`
        Province        *Province   `pg:"fk:province_id" json:"province"`
    }

    Province struct {
        tableName      struct{}         `pg:"provinces,discard_unknown_columns"`
        ID             int              `json:"id" pg:",pk"`
        Name           string           `json:"name"`
    }

在這里我如何稱呼:

    var us Contact
    err = db.Model(&us).Relation("provinces").Where(
        "id = ?", 3,
    ).Select()

我去的是model=Contact does not have relation="provinces"如何糾正用go-pg查詢這個的方法?

當我使用標簽pg:"rel:has-one"更改“省聯系人”上的標簽時

我收到此錯誤pg: Contact has-one Province: Contact must have column province_id (use fk:custom_column tag on Province field to specify custom column)

注意:我不使用他們的遷移,我使用 sql-migration 進行所有遷移

如錯誤和文檔中所述,您需要在Contact上有一個province_id列:

Contact struct {
    tableName       struct{}    `pg:"contacts,discard_unknown_columns"`
    ID              int         `json:"id"`
    Address         string      `json:"address"`
    BuildingType    string      `json:"building_type"`
    BuildingNumber  float64     `json:"building_number"`
    ProvinceId      int         
    Province        *Province   `pg:"rel:has-one" json:"province"`
}

如果您的 ref 列名稱不是province_id那么您可以使用另一列並將fk:custom_column添加到其中。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM