renderMarkdown(getenv("PROJECT_PATH") . "/meta/docs/%CLASSNAME_LC%.md", [ %ENTITY_NS%\%CLASSNAME%::class, ], [ %FORM_NS%\%SAVE_FORM_CONTEXT_CLASSNAME%::class, %FORM_NS%\%DELETE_FORM_CONTEXT_CLASSNAME%::class ]); } #[Route("/", name: "api.%CLASSNAME_LC%:list", method: "GET")] public function list(ServerRequestInterface $request, array $attributes) : ResponseInterface { $request = $this->searchEntitiesFromRequest($request, %ENTITY_NS%\%CLASSNAME%::class); $result = $request->getAttribute("lean.searchRequest")[%ENTITY_NS%\%CLASSNAME%::class]; return $this->outputSearchResult($result); } #[Route("/", name: "api.%CLASSNAME_LC%:add", method: "POST")] public function add(ServerRequestInterface $request, array $attributes) : ResponseInterface { $entity = new %ENTITY_NS%\%CLASSNAME%(); form($this->formFactory->%SAVE_FORM_CLASSNAME_LC%($entity), $this->formFactory->%SAVE_FORM_CONTEXT_CLASSNAME_LC%($request)); return $this->output($entity, (int) $entity->isLoaded()); } #[Route("/{id:\d+}", name: "api.%CLASSNAME_LC%:single", method: "GET")] #[Route("/{id:\d+}", name: "api.%CLASSNAME_LC%:edit", method: "PATCH")] public function single(ServerRequestInterface $request, array $attributes) : ResponseInterface { $request = $this->searchEntityFromRequest($request, %ENTITY_NS%\%CLASSNAME%::class); $result = $request->getAttribute("lean.searchRequest")[%ENTITY_NS%\%CLASSNAME%::class]; form($this->formFactory->%SAVE_FORM_CLASSNAME_LC%($result->getResult()), $this->formFactory->%SAVE_FORM_CONTEXT_CLASSNAME_LC%($request)); return $this->outputSearchResult($result); } #[Route("/{id:\d+}", name: "api.%CLASSNAME_LC%:delete", method: "DELETE")] public function delete(ServerRequestInterface $request, array $attributes) : ResponseInterface { $request = $this->searchEntityFromRequest($request, %ENTITY_NS%\%CLASSNAME%::class); $result = $request->getAttribute("lean.searchRequest")[%ENTITY_NS%\%CLASSNAME%::class]; form($this->formFactory->%DELETE_FORM_CLASSNAME_LC%($result->getResult()), $this->formFactory->%DELETE_FORM_CONTEXT_CLASSNAME_LC%($request)); return $this->outputSearchResult($result); } }