我一直在试图找出如何使用mgo(MongoDB驱动程序Go),我遇到了这个struct声明:
type Something struct { Id bson.ObjectId "_id,omitempty" Name string }
我不太了解第一个元素(Id)的语法。我知道它被声明为类型bson.ObjectId,但是在那里的字符串文字是什么?
我的问题不在于mgo驱动程序的功能,
但是关于这个奇怪的< name> <类型> < string_literal>句法。
我在Go规格上找不到任何东西,我也不知道如何google这个。
这在
language specification的
Struct types部分解释:
A field declaration may be followed by an optional string literal
tag,which becomes an attribute for all the fields in the corresponding field declaration. The tags are made visible through a
07002 but are otherwise ignored.
// A struct corresponding to the TimeStamp protocol buffer. // The tag strings define the protocol buffer field numbers. struct { microsec uint64 "field 1" serverIP6 uint64 "field 2" process string "field 3" }