En el anterior video vimos como podíamos filtrar por los campos, el problema que nos encontramos fue que siempre era AND y si filtrábamos por título y dificultad no aparecerá nada, a si que vamos a cambiarlo a un OR para que sí que aparezcan resultados.
Comenzaremos con el siguiente filtro:
filter[dificultad-filter][condition][path]=field_difficulty
filter[dificultad-filter][condition][operator]==
filter[dificultad-filter][condition][value]=easy
filter[title-filter][condition][path]=title
filter[title-filter][condition][operator]=CONTAINS
filter[title-filter][condition][value]=profundo
En este caso se está haciendo un filtro con AND y para cambiarlo a un OR tenemos que añadir lo siguiente:
filter[or-group][group][conjunction]=OR
También estamos usando “filter” y el primero valor del array es el valor que usaremos para agrupar, podemos poner el valor que queramos, en este ejemplo “or-group”. Luego ya “group” y “conjunction” y como valor podemos poner AND u OR.
Una vez que tenemos el grupo definido tenemos que añadir los filtros al grupo “or-group” y se hace utilizando la clave “memeberOf” en el array de los filtros:
filter[title-filter][condition][memberOf]=or-group
filter[dificultad-filter][condition][memberOf]=or-group
# | Capítulo | Duración | Visualizado |
---|---|---|---|
1 | Introducción a JSON:API | 10:43 min | |
2 | Ocultando campos JSON:API | 3:27 min | |
3 | Ordenando entidades | 5:16 min | |
4 | Paginación | 4:25 min | |
5 | Incluyendo entidades en la respuesta | 7:57 min | |
6 | Filtrando y buscando | 6:32 min | |
7 | Agrupando filtros para AND y OR | 4:05 min | |
8 | Usando Include con otros parámetros | 8:11 min | |
9 | Multi-idioma | 3:39 min | |
10 | POST | 10:12 min | |
11 | PATCH | 3:20 min | |
12 | DELETE | 1:22 min | |
13 | Subiendo archivos | 9:38 min |