api-platform.com相关内容
如何在创建时自动将当前授权用户添加到资源(POST)。 我使用的是JWT身份验证,并且/api/routes受到保护,不会被未经授权的用户访问。我想对其进行设置,以便在经过身份验证的用户创建新资源(即通过向/api/articles发送POST请求)时,新创建的Article资源与经过身份验证的用户相关。 我当前使用每个资源类型的自定义EventSubscriber从令牌存储中添加用户
..
我有一个User实体和一个Organisation实体,Booking和User之间有关系: /** * @ORMManyToOne(targetEntity="AppEntityUser", inversedBy="bookings") * @ORMJoinColumn(nullable=false) */ private $user; User实体有一个名为Country的属性
..
在尝试安装 Api-Platform(或在现有 Api-Platform 安装上运行 composer update 时,我收到如下错误: 未捕获的错误:参数 1 传递给 ApiPlatform\Core\Bridge\Doctrine\Orm\Metadata\Property\DoctrineOrmPropertyMetadataFactory::__construct() 必须是 Do
..
我正在尝试仅对 api 平台上的自定义操作进行验证,但它不起作用. 我只想在验证没有错误的情况下更改密码,但无论如何都要更改密码. 如果我从验证注释中删除验证组,它会起作用. 例如,如果我将 @Assert\NotBlank(groups={"put-reset-password"}) 替换为 @Assert\NotBlank 验证通过.> 这是实体的代码: "更改密码"=
..
我正在创建一个沙盒应用程序作为 Api 平台实践,我有以下问题需要解决: 让我们考虑以下用户实体的 REST 端点: 免责声明在代码示例中有更多的属性,但整个概念都适用于 Collection-get(aka./api/users) - 仅适用于管理员用户(所有属性都可用,也许我们排除了散列密码) POST - 每个人都应该有权访问以下属性:用户名、电子邮件、普通密码(不保留以防万
..
在尝试安装 Api-Platform(或在现有的 Api-Platform 安装上运行 composer update 时,我收到如下错误: 未捕获的错误:传递给 ApiPlatform\Core\Bridge\Doctrine\Orm\Metadata\Property\DoctrineOrmPropertyMetadataFactory::__construct() 的参数 1 必须是
..
我的设置是 Symfony 5,最新的 API-Platform 版本在 PHP 7.3 上运行.所以我希望能够查询姓名和用户名(甚至电子邮件).我需要编写自定义解析器吗? 这是我迄今为止尝试过的,但结果是 WHERE name = $name AND username = $name. query SearchUsers ($name: String!) {用户(名称:$name,用户名
..
我实际上正在基于以下内容构建 API: symfony/flex: v1.0.61 symfony: v4.0.3 api-platform/api-pack: v1.0.1 api-平台/核心:v2.1.4 CRUD 操作很容易实现.尽管如此,该自定义操作 似乎并不简单. 我尝试实现的自定义操作将根据给定的 $slug 简单地返回一个 App\Entity\Product
..
我想更新我现有的 API(使用 FOSREST 创建). 我有很多返回自定义 JSON 对象的路由,这些对象与我的实体不同. 例如,我有一个 Offer 实体 我想返回一个基于该产品实体但带有自定义字段的 JSON 对象. 是否真的必须为该一种 GET 方法创建新资源,或者是否有最佳实践来做到这一点? 解决方案 添加自定义数据有多种方式: (最简单)添加自定义
..
我有两个实体作者和书 book |多对一 |作者身份证 ||idid作者 | 在作者控制器中,我有一个 Action 函数来获取作者的详细信息和他的所有书籍(使用 forward 函数获取书籍) 公共函数authorDetailsAction($id){$author= $this->getDoctrine()->getRepository(Author::class)->find($id)
..
我目前正在使用 api-plateform,到目前为止它一直是一个很棒的工具.我想在我的数据存储到我的数据库之前添加一些验证器. Api-platform 使用 IRI 而不是普通 id(即使您可以更改此行为).我想知道验证 IRI 的最佳方法是什么. 假设我收到例如“api/users/1".我想确保这个 IRI 实际上是有效的(即 id 存在于表“user"中). 我可以创建
..
我正在创建一个自定义的 PUT 操作. 不使用内置操作,因为受影响的属性未包含在此实体的默认规范化中,还因为此操作有一些超出此实体/模型的副作用. 此外,只有当 DB 上实体的当前状态符合某些预期时,更新操作才会成功. 例如对于实体 class Lead {/*** @ORM\Column(type="integer", nullable=true)* @Groups({"le
..
在对项目进行 PUT 调用期间,我需要获取当前保存的值,以便将它们与请求参数进行比较. 假设 PUT 调用包含一个与当前保存的参数不同的 name 参数. 我认为使用 $repository->findOneBy 获取实体会返回保存的值,但事实并非如此,我正在获取 PUT 参数值. 设置取自 https://api-platform.com/docs/core/事件: con
..
我目前正在使用 API 平台在 Elasticsearch 中显示一些数据.这很好用,但我现在正在研究另一个功能. 我的应用程序需要处理需要命中端点并返回一些数据的第 3 方 API. 在我的应用程序中,我希望能够点击 (/api/logistics/{action} - 其中 action 是一个端点,例如登录),然后点击我的应用程序层并返回数据(第3方可重命名) 对第 3 方
..
有人知道如何在集合中添加额外数据吗?该文档对 如何添加说了很多项目上的额外数据,它转化为装饰 ItemNormalizer 服务,而且效果很好. 但是当涉及到在实体集合上添加一些数据时,我正在努力找出要装饰的规范化器.额外的数据可以是任何东西:当前登录的用户、详细的寻呼机、一些调试参数,......与特定实体无关,而是与请求本身有关. 目前唯一可行的解决方案是挂钩内核事件,但这绝对
..
我有一个名为 Station 的实体. 这个实体有一个名为 attributes 的属性,它是 StationAttributes 值对象. 我尝试将属性设置为 StationAttributes: /*** @var StationAttributes* @ORM\Column(name="attributes", type="station_attributes", nullab
..
控制台命令 debug:router 绝对显示所有资源,来自所有已安装的 Bundle(实体标记为 @ApiResource()) 如何为不同的bundle配置不同的前缀?或者有选择地禁用资源. App 忽略了 resource 中的任何路径:config/routes/api_platform.yaml api_platform:资源:.类型:api_platform前缀:/api
..
我想知道默认 API 平台操作(CRUD 方法)存储在哪里,以便我可以在任何需要的地方调用它们. 我需要它,因为当我定义我的自定义操作时,我想调用它们(默认操作),这样我就不需要重写代码(例如,获取资源集合). 例如: class GetResourceListAction{公共函数 __invoke(){//在这里做我的事情//最后调用返回集合的默认操作}} 谢谢 解决方案
..
我覆盖(自定义操作和服务)我的应用程序的 DELETE 操作以避免从数据库中删除数据.我所做的是更新一个字段值:isDeleted === true. 这是我的控制器: class ConferenceDeleteAction 扩展 BaseAction{公共函数 __invoke(EntityService $entityService, Conference $data){$entit
..
我已经开始使用 API 平台,它看起来非常棒,但它是一个工具包,而且通常可以在 Google 或 Stack Overflow 上快速搜索答案和我可能遇到的问题. 然而,我正在努力解决这个问题,它可能是一个简单的术语问题...... 如何更改或覆盖实体名称的自动复数形式?IE.舰队正在变成舰队. 关于在哪里查找文档的任何提示或有关如何做我所追求的任何快速示例的任何提示?我正在使用
..