17. Laravel 11 API Rest con TDD: Búsqueda y accesibilidad

Поділитися
Вставка
  • Опубліковано 8 вер 2024
  • En este video continuaremos con el desarrollo de nuestra API Rest usando TDD, Haremos la búsqueda en todos los CRUD que tenemos además de ver algunas buenas prácticas relacionadas con la accesibilidad.
    Repositorio: github.com/abe...
    Búsqueda y ordenamiento con livewire: • 7. Laravel + Livewire:...
    Discord: / discord
    #laravel11 #backenddeveloper #php #desarrolloweb #mysql #laraveldeveloper #api #apirest #laravelApi
    #laravelTdd #TDD #laravelTesting #TestingDevelopment #LaravelUnit #PhpUnit #laravelbusqueda #busqueda #accesibilidadAPI

КОМЕНТАРІ • 7

  • @eliud19900
    @eliud19900 2 місяці тому

    Hola que gran video he aprendido muchas cosa

  • @spiderchato
    @spiderchato Місяць тому +1

    Hola!
    Estuve haciendo los links de platos y menus, por ejemplo en menú agregué:
    $response->assertJsonPath('data.menus.0.links.self', route('restaurants.menus.show', [$this->restaurant, $this->menus->first()]));
    luego vi que en el repo que usaste:
    $response->assertJsonPath('data.menus.0.links.self', route('restaurants.menus.index', $this->restaurant));
    Mi duda es si debería usar "index" o "show", en caso de usar "index" toda la lista va a tener la misma ruta en "links", en cambio con "show" tendría cada uno sus datos correspondientes.
    Lo mismo me sucede con los platillos. Gracias!

    • @ElAbelucky
      @ElAbelucky  Місяць тому

      Tienes razón, se me debió haber escapado, ya deberías ver el código correcto en el repo

  • @daviddepaz1387
    @daviddepaz1387 12 днів тому

    Hola, he aprendido mucho con tus vídeos, tengo una pregunta, ¿cómo puedes realizar filtros para relaciones anidadas?

    • @ElAbelucky
      @ElAbelucky  12 днів тому +1

      Hola, hay muchas formas, podrías usar un join directamente (esto te daría mas control), imagina que tienes la tabla posts y cada post tiene una categoría, podrías hacer algo como:
      Posts::join('categories', 'posts.category_id', '=', 'categories.id')->where('categories.name', 'like', "%{$busqueda}%")
      Desde luego es mas código, hay que saber sql y te traerías los datos de la categoría también, la otra opción seria usar whereHas:
      Post::whereHas('category', function (Builder $query) {
      $query->where('name', 'like', "%{$busqueda}%");
      })
      Para este caso es necesario tener la relación llamada 'category' en tu modelo Post, puede ser whereHas o orWhereHas dependiendo de lo que busques.
      Si quisieras integrar lo que se ve en el video, podrías poner en la función searchFields algo así ['category.name', ...resto de tus campos] y en el trait tendrías que hacer una función que separe esos campos para aplicarles individualmente el whereHas o orWhereHas.

  • @eliud19900
    @eliud19900 2 місяці тому

    La invitacion de discord no funciona

    • @ElAbelucky
      @ElAbelucky  2 місяці тому +1

      Listo ya lo corregí discord.gg/EwBH4NM6