php-crud-api icon indicating copy to clipboard operation
php-crud-api copied to clipboard

Custom Controller OpenAPI Documentation

Open matjones opened this issue 2 years ago • 3 comments

I had an expectation that if I created a custom controller, it would automatically get picked up in OpenAPI documentation. However I don't see my custom route listed when viewing the openapi route. Is there something I'm missing, or do they just not get documented.

Here is an example of my route:

use Psr\Http\Message\ResponseInterface;
use Psr\Http\Message\ServerRequestInterface;
use Tqdev\PhpCrudApi\Cache\Cache;
use Tqdev\PhpCrudApi\Column\ReflectionService;
use Tqdev\PhpCrudApi\Controller\Responder;
use Tqdev\PhpCrudApi\Database\GenericDB;
use Tqdev\PhpCrudApi\Middleware\Router\Router;

class CategoryDropdownController
{

	private $responder;

	public function __construct(Router $router, Responder $responder, GenericDB $db, ReflectionService $reflection, Cache $cache)
	{
		$router->register('GET', '/categorylist', array($this, 'getMyCustomQuery'));
		$this->responder = $responder;
		$this->db = $db;
	}

	public function getMyCustomQuery(ServerRequestInterface $request): ResponseInterface
	{
		$sql = "SELECT * from `categories`"; // Query is simplified for this example
		$pdo_statement = $this->db->pdo()->query($sql);
		$result = $pdo_statement->fetchAll();
		return $this->responder->success(['results' => $result]);
	}
}

matjones avatar May 11 '23 02:05 matjones

Is there something I'm missing, or do they just not get documented.

No, I'm sorry, customer routes are not automatically documented. Do anyone know how this documentation could be automated? I think it would be a great feature. I'm not sure it is feasible though..

mevdschee avatar May 11 '23 13:05 mevdschee

No, I'm sorry, customer routes are not automatically documented. Do anyone know how this documentation could be automated? I think it would be a great feature. I'm not sure it is feasible though..

Thanks for the speedy response. It would be great if there was a way to achieve this too.

matjones avatar May 11 '23 18:05 matjones

No, I'm sorry, customer routes are not automatically documented. Do anyone know how this documentation could be automated? I think it would be a great feature. I'm not sure it is feasible though..

Thanks for the speedy response. It would be great if there was a way to achieve this too.

I have the same problem. Did you solve it somehow?

Sparviero-Sughero avatar Apr 23 '24 11:04 Sparviero-Sughero