亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

為JSON編碼器/解碼器“發布”了不同的結構屬性

為JSON編碼器/解碼器“發布”了不同的結構屬性

皈依舞 2021-05-07 14:19:10
我需要通過JSON導出一些大型結構,并取回JSON字符串以僅更新其某些屬性。讓我們有以下結構:type House struct {    Name   string  `json:"name"`    Rooms  int     `json:"rooms_count"`    Owner  *Owner  `json:"-"`}使用進行編碼encoding/json將產生JSON字符串,例如{"name":"some name", "rooms_count":5}我現在得到以下JSON字符串:{"name":"some other name", "rooms_count":7, Owner:{something...}}用戶想要更改每個屬性。Owner不允許,因為它沒有被導出。但是我只想允許更改rooms_count。有什么說法可以將某些屬性與一起導出Encoder,但不能由導出Decoder?必須手動編寫所有這些檢查會非常不愉快。
查看完整描述

2 回答

?
偶然的你

TA貢獻1841條經驗 獲得超3個贊

在您的具體情況下,只需解組到新結構并執行acurrentStruct.Rooms = newStruct.Rooms就是您想要的。

對于這種類型的自定義編組,還沒有一種完全簡單的方法。最好的選擇是兩個相同的結構,在不同的場合使用不同的標簽,并進行一些反射以在它們之間進行轉換。


查看完整回答
反對 回復 2021-05-31
  • 2 回答
  • 0 關注
  • 117 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號