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

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

golang json 返回 不需要輸出的 struct 字段

golang json 返回 不需要輸出的 struct 字段

達令說 2018-08-18 11:28:09
type Goods struct {     IDAutoModel     CategoryIDModel // 商品分類     NameModel     DescriptionModel      // 商品特色描述     Stores        uint64         `json:"stores"`             // 庫存數     MinScore      uint64         `json:"min_score"`          // 積分     Weight        float64        `json:"weight"`             // 重量     TimeAllModel     Category GoodsCategory `json:"category,omitempty"` }在 返回 Goods json 列表的時候 不想輸出 Category struct。 如何 刪除 struct 里面的 struct返回 json 公用 一個 struct 有的接口返回 不需要 Category 沒有關聯查,所以是空的 struct有些地方是 需要輸出 Category 的, 比如商品詳情頁, 商品列表頁 就不需要輸出 商品關聯的 Categoryomitempty 和 - 根本不行
查看完整描述

1 回答

?
犯罪嫌疑人X

TA貢獻2080條經驗 獲得超4個贊

Struct values encode as JSON objects. Each exported struct field becomes a member of the object unless

  • the field's tag is "-", or

  • the field is empty and its tag specifies the "omitempty" option.

The empty values are false, 0, any nil pointer or interface value, and any array, slice, map, or string of length zero. The object's default key string is the struct field name but can be specified in the struct field's tag value. The "json" key in the struct field's tag value is the key name, followed by an optional comma and options. Examples:

// Field is ignored by this package.
Field int json:"-"

// Field appears in JSON as key "myName".
Field int json:"myName"

// Field appears in JSON as key "myName" and
// the field is omitted from the object if its value is empty,
// as defined above.
Field int json:"myName,omitempty"

// Field appears in JSON as key "Field" (the default), but
// the field is skipped if empty.
// Note the leading comma.
Field int json:",omitempty"
The "string" option signals that a field is stored as JSON inside a JSON-encoded string. It applies only to fields of string, floating point, integer, or boolean types. This extra level of encoding is sometimes used when communicating with JavaScript programs:

Int64String int64 json:",string"
The key name will be used if it's a non-empty string consisting of only Unicode letters, digits, dollar signs, percent signs, hyphens, underscores and slashes.

GO官方Json包


查看完整回答
反對 回復 2018-08-19
  • 1 回答
  • 0 關注
  • 2699 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

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

幫助反饋 APP下載

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

公眾號

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