我有以下結構:type Company struct { Id uuid.UUID `json:"id"` Name string `json:"name"` Presentation string `json:"presentation"` Jobs []*Job `json:"jobs"`}type Job struct { Id uuid.UUID `json:"id"` Title string `json:"title"` Description string `json:"description"` CreatedAt time.Time `json:"created_at"` UpdatedAt time.Time `json:"updated_at"`}當試圖解組一個應該匹配這個結構層次結構的 json 字符串時,一些字段被填充,而另一些則沒有。主要是 uuid,但我也設法在 Jobs 中填寫了標題,但沒有在描述中填寫:func main() { s := `{"id": "2cc588a8-087a-4b81-a17f-3c9c35d2e958", "jobs": [{"id": "e1498403-82d8-47a9-b744-96b00c8b91e6", "title": "Qsd", "created_at": "2020-09-07T22:52:22.376857", "updated_at": "2020-09-07T22:52:22.376857", "description": "<p>sd</p>\n"}], "name": "NC", "presentation": "<p>qsdq</p>\n"}` var company *Company json.Unmarshal([]byte(s), &company) log.Printf("%+v\n", company) log.Printf("%+v\n", company.Jobs[0])}我對需要更多格式的日期并不感到驚訝,但我沒有得到字符串字段的不一致。我已經在操場上設置了代碼,所以每個人都可以在這里自己測試。
1 回答

拉丁的傳說
TA貢獻1789條經驗 獲得超8個贊
唯一真正的問題是您忽略了從json.Unmrshal
. 因為您遇到錯誤,所以您不能真正依賴&company
- 一旦遇到無效的日期字段,它基本上只是放棄了它,否則Description
會很好:
https://play.golang.org/p/pxnIlmlPCq5
- 1 回答
- 0 關注
- 106 瀏覽
添加回答
舉報
0/150
提交
取消