Repository navigation
9.5.1 - Corrección para DTOs en campos de filtros.
En el nuevo sistema de DTOs, se pueden mapear valores de los filtros directamente en un DTO, pero en el caso de que el DTO tuviese un campo que se llamase igual que el del filtro no se podían distinguir. Por ejemplo:
// Antes
class UserDTO extends ODTO{
#[ODTOField(required: true)]
public ?int $id_user = null;
#[ODTOField(required: true)]
public ?string $name = null;
// No se puede acceder al valor "name" del filtro por que ya hay un campo llamado "name"
#[ODTOField(required: true, filter: 'User']
public ?string $username = null;
}
// Ahora
class UserDTO extends ODTO{
#[ODTOField(required: true)]
public ?int $id_user = null;
#[ODTOField(required: true)]
public ?string $name = null;
// La nueva propiedad "filterProperty" permite acceder al campo "name" del filtro
// y guardarlo en el campo "username" del DTO
#[ODTOField(required: true, filter: 'User', filterProperty: 'name')]
public ?string $username = null;
}