Документ сохранения Mongo с пустой ссылкой на objectid — ошибка: неверный ObjectId в JSON

Я работаю на сервере golang, подключенном к mongo.

У меня есть следующая ссылочная структура:

type A struct {
    Id   bson.ObjectId    `bson:"_id" json:"id"`
    B    bson.ObjectId    `bson:"b,omitempty" json:"b,omitempty"`
}

Дело в том, что B не является обязательным в A, и когда я пытаюсь сохранить A без B, я получаю сообщение об ошибке:

"Invalid ObjectId in JSON: null"

Как я могу сделать эту ссылку необязательной?


person Yoni Dabush    schedule 29.10.2015    source источник
comment
Работают ли двоеточия для разделения тегов? Я думаю, что это должно быть json:"b,omitempty", и, возможно, то же самое для bson   -  person mrd0ll4r    schedule 29.10.2015
comment
Это была опечатка, и я ее исправил.   -  person Yoni Dabush    schedule 29.10.2015


Ответы (1)


Можете ли вы попробовать с:

type A struct {
    Id bson.ObjectId  `bson:"_id" json:"id"`
    B  *bson.ObjectId `bson:"b,omitempty" json:"b,omitempty"`
}
person nvcnvn    schedule 29.10.2015
comment
Чем первое решение отличается от моего вопроса? может быть, это было до того, как я исправил опечатку. - person Yoni Dabush; 29.10.2015
comment
@YoniDabush да, я публикую это, прежде чем вы обновите свой вопрос. - person nvcnvn; 29.10.2015