API平台注释清晰

时间:2020-01-03 15:50:11

标签: php api symfony api-platform.com

我在API平台上使用Symfony 5。 我的问题是在我的实体Comment.php上,我想有一个父注释和对此注释的响应(例如Facebook上的注释)。

这是我的Comment.php实体:

class Comment
{
/**
 * @ORM\Id()
 * @ORM\GeneratedValue()
 * @ORM\Column(type="integer")
 */
private $id;

/**
 * @ORM\Column(type="text")
 */
private $content;

/**
 * @ORM\ManyToOne(targetEntity="App\Entity\Comment", inversedBy="Comment")
 */
private $parent;

/**
 * @ORM\Column(type="integer", nullable=true)
 */
private $likecomment;

/**
 * @ORM\Column(type="integer", nullable=true)
 */
private $dislike;

/**
 * @var \DateTime
 *
 * @ORM\Column(name="date", type="datetime")
 * @var string A "d-m-Y" formatted value
 */
private $date;

/**
 * @ORM\ManyToOne(targetEntity="App\Entity\User", inversedBy="comments")
 */
private $author;

/**
 * @ORM\ManyToOne(targetEntity="App\Entity\Post", inversedBy="comments")
 */
private $post;

为此,我只需要一个实体,就不能是一个实体注释,也不能是一个实体响应,因为在将来,它可能会具有多个响应级别(响应等)。 / p>

现在,我在Postman上得到这样的结果,并带有GET注释:

{
        "@id": "/api/comments/8",
        "@type": "Comment",
        "id": 8,
        "content": "Dolor laudantium voluptatem corporis dolores a vel voluptatibus. Hic maiores dignissimos adipisci non aut commodi. Sed voluptate dolorum laboriosam.",
        "likecomment": 9,
        "dislike": 1,
        "author": "/api/users/2",
        "parent": "/api/comments/2",
        "date": "2019-12-22T12:33:30+01:00"
    },
    {
        "@id": "/api/comments/45",
        "@type": "Comment",
        "id": 45,
        "content": "Distinctio aut ipsam animi quod qui accusamus iste. Consequatur qui dolorum quis maxime qui voluptates. Totam voluptas provident officiis iste repudiandae. Odio reiciendis ut est dolores.",
        "likecomment": 4,
        "dislike": 1,
        "author": "/api/users/9",
        "date": "2019-07-05T02:27:30+02:00"
    },

当它是响应时,它在json中有一个父级,但是当它是不带父项的注释时,我们在json中没有父级。 我想要一个像这样的json

"@id": "/api/comments/8",
        "@type": "Comment",
        "id": 8,
        "content": "Dolor laudantium voluptatem corporis dolores a vel voluptatibus. Hic maiores dignissimos adipisci non aut commodi. Sed voluptate dolorum laboriosam.",
        "likecomment": 9,
        "dislike": 1,
        "author": "/api/users/2",
        "parent": {
                   "@id": "/api/comments/2",
                   "content": ".........",
                   "likecomment
                  },
        "date": "2019-12-22T12:33:30+01:00"

0 个答案:

没有答案
相关问题