DTO as resource - auto convert subresource identifiers to objects
维护者通常 1 天内回复
还没有人认领这个 Issue。
评估
调研方向
从 EventParticipantImageResource ApiResource 声明和 CreateEventParticipantImageProcessor 开始,然后追踪 eventId 和 participantId URI 变量在处理前是如何处理的。检查 DTO 子资源的反序列化或状态构建路径。当被引用的资源可在 DTO 上使用,同时 processor 仍能访问其标识符时,即表示完成。
由索引模型根据 Issue 内容生成。
描述
Hi,
I've created subresource. This resource is DTO, not an entity.
#[ApiResource(
operations: [
new Post(
uriTemplate: '/events/{eventId}/participants/{participantId}/images.{_format}',
uriVariables: [
# possible bug below
'eventId' => new Link(fromClass: EventResource::class, toProperty: 'event'),
'participantId' => new Link(fromClass: EventParticipantResource::class, toProperty: 'participant'),
],
processor: CreateEventParticipantImageProcessor::class,
),
/** ... */
readonly class EventParticipantImageResource
Problem is that in CreateEventParticipantImageProcessor I can use only uri variables cause query is not serialized:
public function process(mixed $data, Operation $operation, array $uriVariables = [], array $context = []) {
$eventId = $uriVariables['eventId']; # identifier
$eventId = $data->event?->id; # null
}
Is there functionality that will convert identifiers to target resources and assign to DTO fields so I can use $data->event?->id?
- 主要语言
- PHP
- 星标
- 2.6k
- 派生
- 989
- 平均合并
- 1 天 22 小时
- 30 天内合并 PR
- 100
环境准备
- 没有 Dockerfile 或 Docker Compose 文件
- 有 Pull Request 模板
- 阅读贡献指南
从这里开始
- 先读完整个 Issue,再读项目的贡献指南。
- 在 Issue 下留言说明你要接手 —— 这能避免两个人做同样的事。
- Fork 仓库,在一个分支上完成修改。
- 提交 Pull Request,并在描述里引用这个 Issue 编号。
api-platform/core 的其他 Issue
-
JSON:API: resource schemas (`*.jsonapi`) have `properties` but no `type: object`可能已有人在做 @ousamabenyounes 于 2 天前认领。 未关闭
难度 2/5 1 小时以内 新手友好度 80/100
api-platform/core#8701 ·
维护者通常 1 天内回复
-
JSON:API: `JsonApiCollectionBaseSchemaNoPagination` declares `data` as `type: array` without `items`未关闭
难度 2/5 1-3 小时 新手友好度 82/100
api-platform/core#8699 ·
维护者通常 1 天内回复
-
[Json-Schema] Nested resources lost externalDoc and description data可能已有人在做 关联的 PR 仍在进行中或已合并。 未关闭
难度 3/5 1-2 天 新手友好度 68/100
api-platform/core#8721 ·
维护者通常 1 天内回复
-
难度 3/5 1-2 天 新手友好度 50/100
api-platform/core#8704 ·
维护者通常 1 天内回复
-
难度 3/5 1-2 天 新手友好度 62/100
api-platform/core#8703 ·
维护者通常 1 天内回复
查看 api-platform/core 的全部 Issue
相似的 Issue
-
domain/discovery
难度 2/5 1-3 小时 新手友好度 88/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 76/100
维护者通常 1 天内回复
-
难度 2/5 1-3 小时 新手友好度 70/100
neos/flow-development-collection#3639 · 1 条评论 ·
维护者通常 1 天内回复
-
The PHP version check in prepare.php still allows PHP 7.2 and 7.3可能已有人在做 @ekamran 今天认领。 未关闭
难度 2/5 1-3 小时 新手友好度 72/100
WordPress/phpunit-test-runner#359 ·
维护者通常 2 天内回复
-
[ObjectMapper] Merge the objects that repeated `#[Map]` attributes map …可能已有人在做 关联的 PR 仍在进行中或已合并。 未关闭ObjectMapper
难度 2/5 1-3 小时 新手友好度 68/100
symfony/symfony-docs#23390 ·
维护者通常 2 天内回复