Для своего проекта я создал категорию сущностей.Его класс хранилища расширяет NestedTreeRepository от соотв.STOF-Extension.Я реализовал пользовательскую конечную точку для перемещения категории в дереве.Функциональность работает нормально, но я борюсь с документацией о чванстве.
Я следовал инструкциям в документации по платформе API, но безуспешно.
App \ Entity \ Cagegory:
namespace App\Entity;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\ORM\Mapping as ORM;
use Doctrine\ORM\PersistentCollection;
use Gedmo\Mapping\Annotation as Gedmo;
use Symfony\Component\Serializer\Annotation\Groups;
use Symfony\Component\Validator\Constraints as Assert;
use ApiPlatform\Core\Annotation\ApiResource;
use \DateTime;
use \DateTimeInterface;
/**
* @ApiResource(attributes={
* "denormalization_context"={"groups"={"tree"}},
* "item_operations"={
* "get"={"method"="GET"},
* "put"={"method"="PUT"},
* "delete"={"method"="DELETE"},
* "moveCategory"={
* "method"="GET",
* "route_name"="category_move",
* "swagger_context" = {
* "parameters" = {
* {
* "name" = "id",
* "in" = "path",
* "required" = "true",
* "type" = "integer"
* },
* {
* "name" = "amount",
* "in" = "path",
* "required" = "true",
* "type" = "integer"
* }
* },
* "responses" = {
* "200" = {
* "description" = "The category has been moved"
* }
* }
* }
* }
* }
* })
*
* @Gedmo\Tree(type="nested")
* @ORM\Table(name="categories")
* use repository for handy tree functions
* @ORM\Entity(repositoryClass="Gedmo\Tree\Entity\Repository\NestedTreeRepository")
*/
class Category
...
config / rout.yaml:
category_move:
path: /api/categories/{id}/move/{amount}
methods: [GET]
defaults:
_controller: App\Controller\CategoryController::move
_api_resource_class: App\Entity\Category
_api_item_operation_name: moveCategory
Когда я перезагружаю страницу сваггера, она все равно показывает стандартные операции, но не мою пользовательскую конечную точку.
Любаяидеи?