Cómo crear una API REST en LARAVEL desde 0
HTML-код
- Опубликовано: 24 ноя 2022
- #tutorial #development #php
No te pierdas cómo crear una api rest desde 0 con laravel de una forma sencilla y paso a paso.
Además en el próximo video veremos cómo consumir esta API REST con otro proyecto de laravel, especial para consumir APIS.
Conviértete en miembro de este canal para disfrutar de ventajas:
/ @elrincondeisma
No olvides suscribirte y darle al like!!!
Espero vuestros comentarios.
CURSOS
🔴 Laravel 9 desde cero: • CURSO LARAVEL 9 GRATUITO
🟠 Crea una API REST: • Curso API REST con LAR...
🟡 Despliega tu aplicación fácilmente: • 📝 Curso API REST con L...
🟢 Roles y permisos con Laravel: • Laravel : Cómo crear R...
🔵 Laravel Excel: • Aprende a crear REPORT...
🟣 Tareas programadas con Laravel: • CÓMO crear TAREAS PROG...
⚫️ Laravel Inertia: • Aprende a crear un CRU...
NO OLVIDES SUSCRIBIRTE Y DARLE AL BOTÓN DE ME GUSTA.
LINK AL CANAL DE TELEGRAM: t.me/+Dw3D-OB5Ew81MTZk
☕️ Otra manera de apoyar el canal 👇🏼 "buymeacoffee"
www.buymeacoffee.com/ElRincon...
👤 Sígueme en:
· Instagram - / elrincondeismaoficial
· TikTok - www.tiktok.com/@elrincondeism...
- LINK A GITHUB: github.com/elrincondeisma
Alfin un tutorial claro y certero para hacer una api con laravel, tenia un monton buscando algo simple entre tantos canales.. gracias!
Eres un master, gracias, estoy entendiendo muy bien el concepto de API y por fin pude hacerlo con laravel.
Genial, lo haces fácil, muy bien explicado, darte las gracias por tu tiempo, saludos.
Gracias a ti
Excelente vídeo , claro y conciso, muchas gracias ...
Gracias!!
Muchas gracias por tu videos , me encanta la manera como explicas el manejo de Laravel, Master
Muchisimas gracias a ti y Recuerda ⚠️ Puedes unirte a nuestra comunidad de DISCORD en este link 👉discord.gg/gBE3qpuKF3 y a nuestro canal de twitch 👉www.twitch.tv/elrincondeismaoficial
sus videos son de mucha ayuda, gracias es facil aprender con sus explicaciones
Muchisimas Gracias! Recuerda ⚠️ Puedes unirte a nuestra comunidad de DISCORD en este link 👉discord.gg/gBE3qpuKF3 y a nuestro canal de twitch 👉www.twitch.tv/elrincondeismaoficial
Excelente video, muchas gracias por compartir. Me estoy iniciando en el mundo de las APIS. ¡¡¡Me pareció muy didáctico ya mismo busco el video siguiente, Ganaste un suscriptor!!!
Saludos.
Guillermo
Muchisimas gracias
Video top, muy bien explico. Gracias.
Haremos un curso avanzado.
hola muy bueno tu video me gusta como realiza las explicaciones
te dejo un aporte cuando creas el array para devolver los servicios del cliente en el método index para evitar el array también
se puede hacer uso de load()
public function index()
{
$clients = Client::all();
$clients->load('services');
return response()->json($clients);
}
Muy bien!! Me encanta que la comunidad aporte nuevos metodos!! Gracias por formar parte
gracias por el video, me despejo la nube de dudas que tenia en la cabeza sobre trabajar con laravel :D
Gracias a ti
Buena tarde, quedo atento al curso de SQL:); adicionalmente estoy desarrollando este ejercicio, muy bueno.
Gracias
Estoy con el
Excelente video! gracias !!!!
Gracias. Únete si aún no lo has hecho a nuestra comunidad suscribiéndote a nuestro canal de youtube y uniéndote a nuestro discord:discord.gg/meZU65c67e
Excelente video, muchas gracias por compartir tu conocimiento con laravel.
Espero un video sobre consumiendo el api rest de laravel sea en blade o JavaScript o lo que se pueda de frontend.
Lo tienes ya publicado. Saludos. Recuerda ⚠️ Puedes unirte a nuestra comunidad de DISCORD en este link 👉discord.gg/gBE3qpuKF3
En la consulta de los clientes agregas ->with('services') antes del ->get() y listo! devuelves los clientes y ellos ya vienen con los servicios... 😉
Muy bueno el video y la explicación paso a paso, solo un detalle y es que el volumen esta muy bajo ( por mas que ponga al máximo el de RUclips y de la pc, aun es bajo).. Luego, te felicito por la claridad de las explicaciones. Muchas gracias!
Muchísimas gracias, subiremos el volumen gracias a un nuevo micrófono. Saludos
Este video es oro
Gracias!!
Como dato adicional. si desean enviar campos de su Request al pivot mediante el attach simplemente deben agregar una , y luego un objeto con los datos. ejem
$clients->services()->attach($request->service_id, ['my_field' => $request->myVar]);
Muy correcto!
me has salvado
Gracias
Hola, no conocia tu canal, inicio el desarrollo del ejercicio :)
Muchas gracias
Hola buenas, muchas gracias por compartir su conocimiento de verdad, me ha ayudado, gracias, para las personas que de alguna manera le esté dando error al momento de enviar la data por PUT, para realizar el update es solo cambiar en los headers en la key por Content-type en vez de Accept, tarde mucho en encontrar el error la verdad jajaja, pero bueno les dejo una solución
Muchas Gracias!! Y Recuerda ⚠️ Puedes unirte a nuestra comunidad de DISCORD en este link 👉discord.gg/gBE3qpuKF3 y a nuestro canal de twitch 👉www.twitch.tv/elrincondeismaoficial
@@elrincondeisma Disculpe una pregunta mas que todo viendo sus videos era porque queria buscar algo claro de como manejar api con laravel bien, en estos momentos quiero hacer una integracion entre laravel y react cual recomienda en tal caso que seria lo mejor para autenticacion, email verificacion doble token y eso
@@josesalcedo7275 Deberias usar Laravel Sanctum o Fortify. Laravel puede hacer la Auth de cualquier sistema. La mas sencilla es por email y password. Luego el siguiente método mas usado es por Social Login con Google, Facebook, Twitter o Apple. La dobre autenticación es un método de seguridad no una forma de autenticación. Espero poder haberte ayudado un poquito con mis videos. Muchas gracias
@@elrincondeisma muchas gracias por la respuesta ya me agregue al Twitch,👌para seguir más a fondo sus videos
Genio gracias por compratir conocimiento! único detalle la calidad del audio, el resto excelente!!
Gracias! Mira los ultimos videos del canal. Dame tu opinión si se han mejorado.
Gracias por este video justo estaba buscando uno para iniciarme con la API para luego tirar con algun frontend. Si pudieras hacer un video de API más avanzado estaria super bien.
Gracias y Recuerda ⚠️ Puedes unirte a nuestra comunidad de DISCORD en este link 👉discord.gg/gBE3qpuKF3 y a nuestro canal de twitch 👉www.twitch.tv/elrincondeismaoficial
Muchas gracias profe
Puedes subirle un poco al volumen
Gran video
Mira los nuevos videos del canal. Espero haber subido la calidad de audio
Lo primero es dar gracias por sus videos tienes una forma de explicar que se entienden muy bien yo tengo una duda como creas una api res pero con imágenes o como puedes enviar la url de la imagen en un json podrías realizar un video con ello desde ya muchas gracias
Perfecto, haremos algo así.
Hola man, una duda que herramienta GUI utilizas para visualizar la base de datos??
Hola man, oye tienes algun video en donde enseñes como usar traducciones en la api rest? es decir que los mensajes que devuelva se puedan traducir?
Una pregunta Isma , porque en las rutas pongo {id} en vez de client y me devuelve array vacio. Donde se especifica si es id o client ? Gracias
otra forma de que aparezca, creo que puede ser asi
public function attach(Request $request)
{
$client = Client::find($request->client_id);
$client->services()->attach($request->service_id);
$finish= [
'message' =>'Client attach successfully',
'client' => $client,
'service' => $request->service_id
];
return response() -> json($finish);
}
Hola, gracias por el video!
Tengo rato buscando uno donde apliquen policies en una api
Lo vamos a ver proximamente
Muy buen video. Consulta, instale laravel con Sail, que servidor web esta usando Apache o NGIX? gracias!
Pregunta, para que services/clients sea un get se deberia enviar un Query parameter, como se haría en laravel?
Me gustaría aprender a usar el api de imgur para subir las imágenes de usuario y post
Hola Ismael, gracias por compartir. Me gusta laravel para las apis. Podrías enseñar una api pero sin el orm eloquent ? podría ser con PDO ?
Podriamos hacer algo si.
Lo del array para devolver el index con servicios yo lo he resuelto en una línea...
$productos=Product::where('id','>=',0)->with('category')->get();
return response()->json($productos);
Y lo mismo para el show...
$prod=Product::where('id', '=',$product->id)->with('category')->get();
return response()->json($prod);
Perfecto!! Es muy buena idea meter las relaciones.
Tambien puedes obtener los datos del pivot asi:
public function show(Client $client)
{
$client->services; // al tocarlo aqui, ya te lo incluye en la respuesta
return response()->json($client);
}
Eso es
otra opcion es usar $book->loadMissing('author');
@@danielcanache188 eso es
No comprendí del todo cual es la finalidad de traer los clientes juntos con sus servicios de esa manera.. Porque no usar un simple join? o no es posible?. Saludos! siempre subiendo material de tanta calidad!
Gracias. Si se puede. Siempre hay varia maneras de hacer las cosas. Alguna idea para nuevo contenido?
@@elrincondeisma quizá sería interesante una serie de videos en donde se desarrollé una app (si es con Laravel mejor para mí jajaj) pero en donde además de la codificación de la misma se abarque también todo lo demás que conlleva un proyecto. Desde la comunicación del sistema, la identificación de requerimietos, el modelado o la planificación de cara al desarrollo (Azure devops, jira, trello o alguna de esas herramientas) quizá hasta un pequeño marco teórico de Agile ya que es súper súper normal encontrarse con cosas como Features, User Stories. Cómo atomizas un sistema en epic, features, user stories, etc. La creación de la BD, la construcción del sistema en sí y también el despliegue del mismo en un host paso a paso. Es decir, y para resumir la realización de un sistema desde el momento 0 hasta el final. Ufff sería maravilloso ver a alguien que sabe tanto hacerlo!. Saludos!
cuando ejecuto el comando php artisan migrate (en el video 20:39 ) me sale que la tabla users ya existe, pero eso pasa en la primera vez que ejecuto la migracion, alguien me puede ayudar?
Hola Isma! estoy siguiento tu tutorial para crear mi api rest, tengo una consulta: las tablas pivot se usan únicamente para relaciones n a m? En mi caso, debo hacer una relacion 1 a n, puedo usar una pivot o no seria lo correcto? Saludos desde argentina!
No en necesario hacer una pivot. Si quieres mas ayuda puedes unirte a la comunidad de Discord. discord.gg/meZU65c67e
Muy buen video , Pero mejora el volumen
Mira los ultimos videos. Espero haberlo mejorado
@@elrincondeisma Profe usted es un crack , Hagale que yo subo el volumen a tope desde mi pc , Grandioso aporte profe
Saludos Isma.
Que terminal estás utilizando?.gracias x tu contenido
ITerm. Maravillosa terminal. Recuerda ⚠️ Puedes unirte a nuestra comunidad de DISCORD en este link 👉discord.gg/gBE3qpuKF3
Excelente video. Podrias compartir el repositorio para tener como base? Muchas gracias!
Hola! Apoyando el canal tienes acceso a los códigos de los videos
Hola, en su experiencia ¿Qué tan necesario es crear esa tabla pivot, xq no se hace directamente la relación en los modelos?, saludos
Las tablas pivot ayudan a ser algo mas claros
Tienes algun video donde explique como instalarlo ? Me salen cientos de errores al querer instalar laravel y no los encuentro en Internet.
Si. Pero en que so lo estas instalando?
Buena noche inicialmente GRACIAS, logre terminar el ejercicio, consulta:
¿Esta Api la puedo conectar con powerbi, es que necesito conectar un power bi, con un ejercicio similar?
Si
una pregunta cual es la extencion que usas para que al copiar te completa todo
Github copilot
Hola, tengo una duda, hago lo mismo que el video pero a mi siempre me está respondiendo el json con un prefijo php al inicio.
Por ejemplo:
php{
"message": "",
"data": [
{...}
]
}
Lo cual me genera problema al querer consumirlo desde un fetch en js, por ejemplo.
Alguien sabe que puedo hacer?
Únete si aún no lo has hecho a nuestra comunidad suscribiéndote a nuestro canal de youtube y uniéndote a nuestro discord:discord.gg/meZU65c67e
Bro, es posible deployar la rest api en un hosting cotidiano? sin usar heroku o aws?
Si totalmente
@@elrincondeisma muchas gracias lo he conseguido, otra duda recomiendas usar uuid como primary keys, tienes algun video en donde muestres como usarlo? saludos
en el postman, cuando hago get a todos me lista los datos, pero al mandarle un parametro me manda el array vacio, en la ruta show estoy enviando el parametro y tengo el controller justo como en el video, alguna ayuda?
encontré la solución a mi problema por si a mas de alguno le sucede hice lo siguiente:
clientController : en la funcion show quedo asi :
public function show($id)
{
//
$client= client::find($id);
return response()->json($client);
}
parecia que no me recibia correctamente el id, o en todo caso que no hacia bien su proceso como isma lo explica, de igual forma, si a alguien le da error en esta parte que el postman no les trae nada al hacer el GET con parametro
eso es
Una pregunta que será muy tonta supongo: por qué la función show recibe una instancia de la clase Cliente como parámetro? No deberia recibir un id de
cliente?
Puedes hacer que reciba la instancia de tal manera que ya no tienes que instanciar la variable dentro.
¿De donde saco esa IA que hace el código?
es github copilot
al momento de hacer el detach elimina todos los registros de ese cliente con todos los servicios por ese id.
$client->services()->detach($request->service_id, ['related_id' => $request->id]);
busque para que solo elimine un solo registro con el id de clients_services osea pasandole 3 parametros, pero aun asi elimina todos los registros por el id_servicio
Prueba a borrarlo directamente.
prueba con sync
y lo q estaba buscando ... no está en este video. y q era? las validaciones de los campos con sus respectivas respuestas de error en formato json.
1 hora 12 pa encontrarme con un tipo q me dice "luego lo veremos" y el "luego se convirtió en" "no sé"
Estoy preparando un video de validaciones. En breves estara publicado
El error de muchos RUclipsrs es que tiran código en una pantalla de alta resolución y cuesta ver los códigos, bien tendríamos buscar una lupa o hacen un zoom 😂 mejor busco otra pagina no vaya ser y quede ciego 😂
La mía por eso mismo es de 1080 para que no se vea enana.
Intentare hacer mas zoom
@@elrincondeisma excelente, es u sugerencia, enfoca el código que es lo interesante en este tipo de videos, no se qué sistema usas pero en Windows es Ctrl(+ -)
eres bueno explicando, pero dan tanta vueltas para explicar algo que seguro los que apenas comienzan se pierden completamente en tantos comentarios extras
yo lo estuve usando asi, con el with, lo de traer los servicios del cliente:
public function show(Client $client)
{
//
$client = Client::where('id', '=', $client->id)
->with('services')
->orderBy('id', 'desc')
->get();
if (!$client) {
return response()->json([
'message' => 'Cliente no encontrado'
], 404);
# code...
}
$data = [
'message' => 'Client data',
'client' => $client,
];
// Retornar los datos
return response()->json($data, 201);
}