<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                [TOC] ## 一對一情況關聯表 如: ``` 場景一 : [user] id name user_data_id [user_data] id address 場景一: [user] id name [user_data] id address user_id ``` > 注意: 創建`struct` 時 把有對方 `user_id `的表 為 `rel(one)` ### 針對場景一的操作 ```go //==========表========== [user] id name profile_id [profile] id age //==========表========== // ========== 結構體========== type User struct { Id int Name string Profile *Profile `orm:"rel(one)"` // OneToOne relation } type Profile struct { Id int Age int16 User *User `orm:"reverse(one)"` // 設置一對一反向關系(可選) } // ========== 結構體========== //==========已經取得了 User 對象,查詢 Profile========== user := &User{Id: 1} o.Read(user) if user.Profile != nil { o.Read(user.Profile) } //==========直接關聯查詢========== user := &User{} o.QueryTable("user").Filter("Id", 1).RelatedSel().One(user) // 自動查詢到 Profile fmt.Println(user.Profile) //可正常取值 fmt.Println(user.Profile.User) //==========通過 User 反向查詢 Profile========== var profile Profile err := o.QueryTable("profile").Filter("User__Id", 1).One(&profile) if err == nil { fmt.Println(profile) } ``` ### 針對場景二的操作 ```go type HsUser struct { UserId int `orm:"pk"` UserLogin string UserName string UserSex int HsUserConfig *HsUserConfig `orm:"reverse(one)"` } type HsUserConfig struct { CfgId string `orm:"pk;"` UserId int `orm:"-"` //注意不需要此字段, CfgDataType string HsUser *HsUser `orm:"null;rel(one);on_delete(set_null);column(user_id)"` } ``` #### 增 ``` o := orm.NewOrm() //需要先添加關聯表,獲得user_id user := new(HsUser) user.UserId = 9991 user.UserName = "999test1" i, e := o.Insert(user) ThrowErr(e) fmt.Println(i) userConfig := new(HsUserConfig) ``` ``` //把攜帶user_id 表發送給userConfig userConfig.HsUser = user userConfig.CfgId = "hello" i2, e2 := o.Insert(userConfig) ThrowErr(e2) fmt.Println(i2) fmt.Println(userConfig) ``` #### 改 ``` userConfig := new(HsUserConfig) //查 o.QueryTable(userConfig).Filter("user_id", 107).RelatedSel().One(userConfig) o.Read(userConfig.HsUser) //更新 userconfig 表 userConfig.CfgDataType = "CfgDataType" i, i2 := o.Update(userConfig) //更新 user 表 userConfig.HsUser.UserLogin = "UserLogin" i4, i3 := o.Update(userConfig.HsUser) ``` #### 查 ``` o := orm.NewOrm() userConfig := new(HsUserConfig) o.QueryTable(userConfig).Filter("user_id", 107).One(userConfig) o.Read(userConfig.HsUser) //o.QueryTable(userConfig).Filter("user_id", 107).RelatedSel().One(userConfig) 能直接取值 userConfig.HsUser 的值,但無法轉json //轉json bytes, e := json.Marshal(userConfig) ThrowErr(e) fmt.Println("json:", string(bytes)) //{"CfgId":"2A442CC4-65AF-485F-A530-B034C4C8B34F","UserId":0,"CfgDataType":"contact","HsUser":{"UserId":107,"UserLogin":"檢驗總指揮","UserName":"檢驗總指揮","UserSex":0,"HsUserConfig":null}} ``` > 注意: 在`user` 表的strcut 表中 無需聲明`profile_id` 關聯表時就指定,可自定義 `Profile *Profile `orm:"rel(one);column(profile_id)"`
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看