如何在 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{},但我正在尝试创建一部分问题。我在谷歌上搜索了一段时间,但没有找到任何相关文档。

各种组合我都试过了,比如:

但是都报错

如有任何帮助或指点,我们将不胜感激!

如果您使用 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"}}