OpenAPI не может найти объект, используемый в качестве схемыPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 OpenAPI не может найти объект, используемый в качестве схемы

Сообщение Anonymous »

Я использую пакет API Nelmio с Symfony 5 для документации. У меня возникла ошибка при попытке сослаться на объект внутри ответа в моем контроллере. Схема не найдена.
Я использую базовую конфигурацию API пакета nelmio:

Код: Выделить всё

nelmio_api_doc:
documentation:
info:
title: 'API Documentation'
description: ''
version: '1.0.0'
areas:
path_patterns:
- '^/(?!doc|\_error|\_profiler|)'
Это мой объект пользователя:

Код: Выделить всё

/**
* @OA\Schema(
*  schema="User",
*  type="object",
*  description=""
* )
* User
*
* @ORM\Table(name="user")
* @ORM\Entity(repositoryClass="App\Repository\UserRepository")
*/
class User
{
/**
* @var int
*
* @OA\Property(
*     type="integer",
*     example="6083"
* )
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
}
И здесь я использую схему в качестве jsoncontent внутри ответа:

Код: Выделить всё

  /**
* @Rest\View(serializerGroups={"test"})
* @Rest\Get("/listusers")
*
*  @OA\Response(
*          ref="success",
*          response=200,
*          description="OK",
*          @OA\JsonContent(ref="#/components/schemas/User")
*      )
*
*/
public function listUsersAction(Request $request)
{
....
}
У меня возникла ошибка: «Предупреждение пользователя: $ref «#/comComponents/schemas/User» не найден для @OA\JsonContent() в \App\Controller\ApiController-\ u003ElistUsersAction() в C:\Users\usertest\src\Controller\ApiController.php"
Я пробовал очистить кеш, php bin/console nelmio:apidoc:generate (также генерирует ту же ошибку).

Подробнее здесь: https://stackoverflow.com/questions/793 ... -as-schema
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»