go - 由 grpc proto3 生成的 protobuff 中的蛇形案例样式
问题描述
是否可以在 grpc 中将默认模型proto3
从 CamelCase 更改为 snake_case?
例子 :
文件anyproto.proto
...
message Request {
bool RequestStatus = 1;
string RequestMessage = 2
}
...
现在protoc -I. --go_out=plugins=grpc:. anyproto.proto
命令生成这个模型:
文件 :anyproto.pb.go
type Request struct {
state protoimpl.MessageState
sizeCache protoimpl.SizeCache
unknownFields protoimpl.UnknownFields
RequestStatus bool `protobuf:"varint,1,opt,name=requestStatus,proto3" json:"requestStatus,omitempty"`
RequestMessage string `protobuf:"bytes,2,opt,name=requestMessage,proto3" json:"requestMessage,omitempty"`
}
我想改变风格requestStatus
和requestMessage
request_status
request_message
解决方案
这是你想要的?
https://developers.google.com/protocol-buffers/docs/style#message_and_field_names
引用自链接:
使用 CamelCase(首字母大写)作为消息名称 - 例如 SongServerRequest。使用 underscore_separated_names 作为字段名称(包括 oneof 字段和扩展名)——例如,song_name。
message SongServerRequest {
required string song_name = 1;
}