Я хочу использовать структуры go, сгенерированные компилятором gRP C непосредственно для транзакций базы данных, но проблема в том, что только поле сериализации json
установлено в gRP C.
Есть ли способ установить дополнительные ключи сериализации (как показано ниже) или есть другой golang указанный c способ сообщить драйверу базы данных (sqlx
поверх database/sql
), что json
должен использоваться формат ключа?
Пример: компилятор gRP C создает следующую структуру:
type HelloWorld struct {
TraceId string `protobuf:"bytes,1,opt,name=trace_id,json=traceId,proto3" json:"trace_id,omitempty"`
...
Что я хотел бы иметь:
type HelloWorld struct {
TraceId string `db:"trace_id" protobuf:"bytes,1,opt,name=trace_id,json=traceId,proto3" json:"trace_id,omitempty"`
...
Временным обходным решением будет написание sql запросов, которые используют псевдонимы (traceid
вместо trace_id
в этом примере), но это не выглядит согласованным и добавляет много сложности.