如何在 Golang 中将来自 protobuf 的导入消息初始化为数组
How to initialize imported mesage from protobuf as array in Golang
我有一个protobuf文件如下:
message Lesson {
int64 UserId = 1;
int32 CourseId = 2;
int32 LessonId = 3;
LessonStatus Status = 4;
google.protobuf.Timestamp DateSubmitted = 5;
message Question {
string QuestionId = 1;
string StudentAnswer = 2;
QuestionStatus Status = 3;
string SupComment = 4;
}
repeated Question Questions = 6;
}
}
protobuf 文件导入为 api
。
创建 Lesson_Question
的单个对象很简单,使用 &api.Lesson_Question{}
,但我正在尝试创建一部分问题。我在谷歌上搜索了一段时间,但没有找到任何相关文档。
各种组合我都试过了,比如:
questions := []*api.Lesson_Question
questions := []&api.Lesson_Question
questions := &[]api.Lesson_Question
questions := *[]api.Lesson_Question
questions := []api.Lesson_Question
但是都报错
如有任何帮助或指点,我们将不胜感激!
如果您使用 go-grpc,Questions
成员将生成为 []*api.Lesson_Question
。声明文字:
empty_questions:=[]*api.Lesson_Question{}
questions:=[]*api.Lesson_Question{&api.Lesson_Question{QuestionId:"q1"},
&api.Lesson_Question{QuestionId:"q2"}}
我有一个protobuf文件如下:
message Lesson {
int64 UserId = 1;
int32 CourseId = 2;
int32 LessonId = 3;
LessonStatus Status = 4;
google.protobuf.Timestamp DateSubmitted = 5;
message Question {
string QuestionId = 1;
string StudentAnswer = 2;
QuestionStatus Status = 3;
string SupComment = 4;
}
repeated Question Questions = 6;
}
}
protobuf 文件导入为 api
。
创建 Lesson_Question
的单个对象很简单,使用 &api.Lesson_Question{}
,但我正在尝试创建一部分问题。我在谷歌上搜索了一段时间,但没有找到任何相关文档。
各种组合我都试过了,比如:
questions := []*api.Lesson_Question
questions := []&api.Lesson_Question
questions := &[]api.Lesson_Question
questions := *[]api.Lesson_Question
questions := []api.Lesson_Question
但是都报错
如有任何帮助或指点,我们将不胜感激!
如果您使用 go-grpc,Questions
成员将生成为 []*api.Lesson_Question
。声明文字:
empty_questions:=[]*api.Lesson_Question{}
questions:=[]*api.Lesson_Question{&api.Lesson_Question{QuestionId:"q1"},
&api.Lesson_Question{QuestionId:"q2"}}