[Laravel] Support for ExistsFilter
Los mantenedores suelen responder en 1 día
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Aptitud para principiantes
- 52/100
Línea de trabajo
Empieza leyendo src/Doctrine/Orm/Filter/ExistsFilter.php y, a continuación, inspecciona src/Laravel/Eloquent/Filter para encontrar los puntos de entrada correspondientes. Añade el equivalente de Laravel para que filter[optional_field]=true seleccione valores no nulos y false seleccione valores nulos, y verifica el comportamiento mediante solicitudes de colección de JSON:API.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Description
I would like to use the ExistsFilter in Laravel a Laravel project using the JSON:API format. Currently, the ExistsFilter is only implemented under Doctrine ORM, but there is no equivalent under src/Laravel/Eloquent/Filter.
Use Case
Filtering a resource collection based on whether a nullable field is present or not, via a JSON:API-compliant request.
Example
Query:
GET /books?filter[optional_field]=true
Model:
#[
ApiResource(
operations: [
new GetCollection(
name: 'books',
parameters: [
new QueryParameter(
key: 'filter[optional_field]',
filter: ExistsFilter::class,
property: 'optional_field',
),
// ...
new QueryParameter(key: 'sort', filter: SortFilter::class),
],
),
// ...
],
),
]
class Book extends Model
{
}
Expected Outcome
This should allow filtering records where optional_field is not null (when true is passed) or is null (when false is passed), similar to how it's done in the Doctrine ORM implementation.
- Lenguaje dominante
- PHP
- Estrellas
- 2.6k
- Forks
- 988
- Merge medio
- 1 d 19 h
- PR fusionados (30 d)
- 108
Preparar el entorno
- Sin Dockerfile ni archivo de Docker Compose
- Tiene una plantilla de pull request
- Leer la guía de contribución
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de api-platform/core
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 72/100
api-platform/core#8744 ·
Los mantenedores suelen responder en 1 día
-
JSON:API: resource schemas (`*.jsonapi`) have `properties` but no `type: object`Posiblemente ocupada @ousamabenyounes la tomó hace 5 días. Abierto
Dificultad 2/5 Menos de una hora Aptitud para principiantes 80/100
api-platform/core#8701 ·
Los mantenedores suelen responder en 1 día
-
[Json-Schema] Nested resources lost externalDoc and description dataPosiblemente ocupada Un pull request vinculado a esta issue está abierto o ya se fusionó. Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 68/100
api-platform/core#8721 ·
Los mantenedores suelen responder en 1 día
-
Dificultad 3/5 1-2 días Aptitud para principiantes 50/100
api-platform/core#8704 ·
Los mantenedores suelen responder en 1 día
-
JSON:API: request documents with no `data`, no `type` or a wrong `type` are accepted with 201Abierto
Dificultad 3/5 1-2 días Aptitud para principiantes 62/100
api-platform/core#8703 ·
Los mantenedores suelen responder en 1 día
Todos los issues de api-platform/core
Issues similares
-
needs-triage Technical TODO
Dificultad 2/5 1-3 horas Aptitud para principiantes 68/100
Los mantenedores suelen responder en 2 días
-
[Store][SurrealDb] add(), query() and remove() fail with 403 on a fresh store instancePosiblemente ocupada @lazerg la tomó hoy. AbiertoBug Status: Needs Review Store
Dificultad 2/5 1-3 horas Aptitud para principiantes 78/100
Los mantenedores suelen responder en 1 día
-
请升级一下 docker 相关镜像到 CVE 修复版本Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 63/100
-
sync-en
Dificultad 1/5 Menos de una hora Aptitud para principiantes 86/100
Los mantenedores suelen responder en 1 día
-
sync-en
Dificultad 1/5 Menos de una hora Aptitud para principiantes 78/100
Los mantenedores suelen responder en 2 días