Как я могу использовать свойство в модели в Loopback 4 (strongloop) и скрыть его в / explorer (Ej: автоматически сгенерированный идентификатор)

Я сделал эту модель в петле 4:

@property({
    type: 'string',
    id: true,
    default: () => uuid(),
  })

  id: string;

  @property({
    type: 'string',
    required: true,
  })
  name: string;

Как видите, id генерируется по умолчанию. Но в loopback / explorer

проводник изображений

Появится идентификатор. Я хочу скрыть это, если он будет генерироваться автоматически, это может ввести в заблуждение разработчиков, которые хотят использовать этот API. Кто-нибудь знает, как поместить свойство в модель и скрыть его от /explorer?

Спасибо.


person Jota    schedule 12.07.2019    source источник


Ответы (2)


Просто исключите идентификатор из схемы тела запроса

@requestBody({
      content: {
        'application/json': {
          schema: getModelSchemaRef(Model, {exclude: ['id']}),
        },
      },
    }

Надеюсь, это поможет, спасибо

person Yash Rahurikar    schedule 18.10.2019

Вы можете попробовать так: -

@model({
  settings: {hidden: ['password']}
})
class User extends Entity {
  // ...
  @property({
    type: 'string',
    required: true
  })
  password: string;
}
person Manish Balodia    schedule 18.07.2019
comment
это не работает .. и 'hiddenProperties' не работает - person Lokesh Bajracharya; 17.03.2021