Hacktoberfest 2026: los issues que los mantenedores marcaron para octubre, abiertos y aptos para principiantes. Explorar issues de Hacktoberfest

DTO as resource - auto convert subresource identifiers to objects

Cerrado
#8,094 0 comentarios 0 reacciones 0 asignados Ver en GitHub

Los mantenedores suelen responder en 1 día

Nadie ha tomado este issue todavía.

Evaluación

Dificultad
4/5
Tiempo estimado
3-5 días
Aptitud para principiantes
42/100
Tipo de issue
Nueva funcionalidad
Claridad
Bastante claro
Estado de actividad
Estancado
Stack tecnológico
php
Área
api, backend

Línea de trabajo

Comienza con la declaración de EventParticipantImageResource ApiResource y CreateEventParticipantImageProcessor, y luego sigue cómo se gestionan las variables URI eventId y participantId antes del procesamiento. Comprueba la ruta de deserialización o de construcción del estado para las subrecursos DTO. La tarea estará terminada cuando los recursos referenciados estén disponibles en el DTO y el procesador aún pueda acceder a sus identificadores.

Escrito por el modelo de indexación a partir del texto del issue.

Descripción

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?

Lenguaje dominante
PHP
Estrellas
2.6k
Forks
988
Merge medio
1 d 19 h
PR fusionados (30 d)
105

Preparar el entorno

Primeros pasos

  1. Lee el issue completo y luego la guía de contribución del proyecto.
  2. Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
  3. Haz un fork del repositorio y trabaja en una rama.
  4. Abre un pull request que haga referencia al número del issue.

Más de api-platform/core

Todos los issues de api-platform/core

Issues similares

Más issues de PHP

Recibe los nuevos issues en tu correo

Un resumen breve de issues de GitHub para principiantes.