Exxclude ID (автоинкремент) из запроса POST в rest-уровне - PullRequest
0 голосов
/ 14 января 2020

Я использую https://github.com/rs/rest-layer для создания своих CRUDL API.

В моей базе данных postgres есть поле идентификатора (целое число, автоинкремент). В моей схеме идентификатор определен следующим образом:

            "id": {
                Required: false,
                ReadOnly: true,
                //OnInit: func(ctx context.Context, value interface{}) interface{} {
                // .....
                //},
                Filterable: true,
                Sortable:   true,
                Validator: &schema.Integer{
                    Boundaries: &schema.Boundaries{
                        Min: 1.0,
                        Max: math.Inf(0),
                    },
                },
            },

Сейчас мне нужно реализовать функцию OnInit, которая предоставляет действительное целочисленное значение для ID, в противном случае создание объекта завершится неудачей.

Поскольку база данных генерирует id (это автоинкремент), я бы хотел полностью исключить поле id из POST-запросов.

Как я могу это сделать? Возможно ли даже с этой структурой?

Если нет, то есть ли способ получить новый идентификатор без фактического вызова в БД и получить наибольшее значение идентификатора?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...