M@c -
2020-09-09 01:37:23

laravel y firebase

Un poco sobre Firebase

Firebase es una plataforma para el desarrollo de aplicaciones web y aplicaciones móviles desarrollada por James Tamplin y Andrew Lee en 2011 y adquirida por Google en el año 2014, está bajo el concepto de BAAS (Backend-As-A-Service) que quiere decir que nos otorga ciertas herramientas como servicio para poder construir nuestra app, como la base de datos en tiempo real, o el servicio de autenticación gratuito, o el hosting gratuito, o el storage, hasta functions (en otro post explicare esto ultimo), y mucho más, lo mejor de todo lo que nombre recién es que podemos usar todo desde Javascript, lo único que habría que hacer es usar el SDK. A continuación les dejo el video oficial

Arranquemos..

Nosotros lo que haremos con Laravel, es sincronizar nuestros modelos de Eloquent con la base de datos en tiempo real de Firebase, es decir, que cuando se haga cualquier acción desde nuestro modelo (Crear, Editar o Borrar), se verá reflejado en la BD de Firebase.

Paso 1 : Creando una cuenta

Entrar a la web de Firebase  y presionemos el botón comenzar para crear nuestra cuenta, nos pedirá acceder con Google, una vez hecho esto ya tendremos nuestra cuenta creada y lista para trabajar

Paso 2 : Agregando un proyecto

Ahora que ya tenemos nuestra cuenta tenemos que agregar nuestro proyecto en el cual usaremos la base de datos, para hacerlo entramos a la Consola de Firebase y presionamos en el botón que dice «Añadir proyecto» o el que dice  »Agregar proyecto», e ingresamos los datos requeridos

IMG FIREBASE

Paso 3 : Configurando

Una vez en el siguiente panel

IMG FIREBASE

Debemos dirigirnos a la sección «Database» en el menú y presionar comenzar a Realtime Database, colocamos en modo de prueba y con esto ya tenemos configurada nuestra BD. Ahora es necesario obtener la API Key y otros datos más para que Laravel pueda trabajar, los mismos los podremos obtener presionando el botón de configuración que se encuentra al lado de donde dice «Project Overview» y después seleccionar Configuración del proyecto, nos llevara a la sección donde encontraremos todos los datos que necesitamos, aquí les detallare donde obtener cada uno, más adelante necesitaremos lo siguiente :

Como bien detallaba en los comentarios, la mayoría de los datos los podemos obtener presionando en la parte de Agregar Firebase a tu app web, la cual se encuentra tanto en la primera vista de la consola, como en configuración de proyecto.

A excepción el único que no encontraremos es SECRET, que es el secreto de la base de datos, este lo obtenemos en la sección Cuentas de servicio que se encuentra en configuración del proyecto.

IMG FIREBASE

Una vez que tengamos todos estos datos podemos pasar a codear!!

Paso 4 : Laraveleando

Empezamos creando nuestro proyecto en Laravel con  composer create-project --prefer-dist laravel/laravel MyFirebaseApp  o laravel new MyFirebaseApp  una vez creado accedemos a el como normalmente hacemos

Paso 5 : Agregando Paquetes y configurando

A continuación tenemos que agregar un paquete que nos facilitará todo el trabajo, para que agregarlo vamos al directorio de nuestra aplicación y ejecutamos el siguiente comando :

Luego dirígete a la carpeta CONFIG  dentro de tu app en Laravel y abre el siguiente archivo services.php

A este archivo agregale el siguiente código y completa los datos con los que obtuvimos más arriba:

Una vez hecho esto tenes que hacer las migraciones y los modelos para que funcione

Paso Final

A todo modelo que quieras sincronizar automáticamente tenes que agregarle primero :

y dentro de las clase agrega

Si hacemos un ejemplo, el modelo debería quedarte así:

 

¡Y listo!, ya tenes tu modelo sincronizado con Firebase, lo que es realmente increíble, es que podes usar MySQL y Firebase a la vez, ya que MySQL es una base de datos relacional y por el otro lado Firebase es NoSQL (No relacional)

¿Y ahora?

Ahora podes hacer muchas cosas, entre ellas :

  • Hacer una aplicación con HTML, CSS y Javascript que use una base de datos en tiempo real
  • Tener los datos en otra BD
  • SEGUIR APRENDIENDO!!

Bueno, espero que les haya gustado, si tienen alguna pregunta no duden en contactarme.


Commentarios (0)

para emitir comentarios debes de crearte un cuenta e ingresar