gpt4 book ai didi

php - Symfony 和 API 平台 - 通过 slug 或 userToken 或任何其他不同于 ID 的字段检索数据

转载 作者:行者123 更新时间:2023-12-04 13:42:38 28 4
gpt4 key购买 nike

我想要做的是:

  • 从我的前端向 API 自定义 url 发送请求以激活用户帐户 (/account/activate/someTokenValue)
  • 通过confirmationToken值检索用户表单数据库
  • 激活用户帐户并将其保存到数据库
  • 返回激活信息(或一些错误,例如 token 无效)

  • 所以我定义了:
    * @ApiResource(itemOperations={
    * "get",
    * "activate_account"={
    * "method"="get",
    * "path"="/account/activate/{confirmationToken}",
    * "controller"=UserActivate::class
    * }
    * })
    */

    在我的 User实体类有 UserActivate Controller 和 UserActivateHandlerUserActivate 调用 Controller 。
    我已经设置了 ApiProperty identifier ID 到 falseconfirmationTokentrue .
       /**
    * @ORM\Id()
    * @ORM\GeneratedValue()
    * @ORM\Column(type="integer")
    * @ApiProperty(identifier=false)
    *
    */
    private $id;

    /**
    *
    * @ORM\Column(type="string", nullable=true)
    * @ApiProperty(identifier=true)
    */
    protected $confirmationToken;

    但是 API 平台仍然需要一个 ID 并且它似乎没有看到 confirmationToken范围。

    基本上我的问题是,在这种情况下,我如何通过 confirmationToken 检索对象?

    最佳答案

    我遇到了同样的问题,通过与标识符指示的属性不同的属性获取实体;您在属性注释方面做得很好:

    @ApiProperty(identifier=false) 
    @ApiProperty(identifier=true)

    但同时你必须在你的路径中保持 {id},所以改变
    "path"="/account/activate/{confirmationToken}",


    "path"="/account/activate/{id}"

    关于php - Symfony 和 API 平台 - 通过 slug 或 userToken 或任何其他不同于 ID 的字段检索数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54680837/

    28 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com