我遇到了omitempty
空值问题。请参阅这个操场示例。我有一个值,我不想在 marshal 期间被忽略 value ""
。这明确意味着我想清除该值,因此我想要编组结果:
{"cf_objectType":"Product","cf_isLocked":"No","cf_ErrorMessage":""}
现在我在这里尝试了指针到字符串的方法,但由于某种原因我不喜欢这样。是否有任何已知的替代方案?例如,为什么我们没有一个标签(就像omitempty
)like之类omitnull
的?
编辑
为了澄清,见下文
m := Metadata{
ObjectType: "Product",
Locked: "No",
ErrorMessage: "",
}
我希望这个结构上的 marshal 函数的结果是:
{
"cf_objectType":"Product",
"cf_isLocked":"No",
"cf_ErrorMessage":""
}
和
m := Metadata{
ObjectType: "Product",
Locked: "No",
}
结果应该是:
{
"cf_objectType":"Product",
"cf_isLocked":"No",
}