Laravel 5.4 y Angular 4. Base de datos.

Continuamos con esta serie de entradas de un proyecto con Laravel.

Dado que voy a utilizar Laravel como backend y voy a generar una API REST con este framework, es hora de prepararlo.

Así que vamos con ello.

Preparando la base de datos.

Lo primero de todo proyecto es preparar la base de datos.

En estas lides nos va a resultar muy útil el sistema de «migraciones» (migrates) y «semillas» (seeds) de Laravel.
No me voy a detener mucho tiempo en definir que son, para eso recomiendo mirar la documentación.

User Migrate.

Para empezar, al menos en este proyecto, modificaremos el archivo «2014_10_12_000000_create_users_table.php», que es un archivo de migración que se copia al iniciar el proyecto con composer para generar la tabla de usuarios, y ya que está, para que complicarnos.
No pongo todos los campos que voy a utilizar en la vase de datos, únicamente alguno o los no relevantes.
Todas las migraciones tienen dos funciones, la función up() y la down(), que son las acciones al crear la base de datos o cuando se hace algún rollback, respectivamente. En la función up() incluiremos lo siguiente:

Levels Migrate

En mi caso, y para la aplicación, voy a incluir un sistema de niveles, por lo que es necesario una tabla que guarde los niveles a utilizar.
Para crear el migrate que se encargará de crear la base de datos.

Una vez creado, le generaremos los campos necesarios (idlevel y name) en el código de la misma manera que para el usuario.

En este caso, lo más recomendable es insertar algunas filas, para lo que será necesario que utilicemos los seeders de Laravel para rellenar esos huecos.

Para empezar, crearemos un Seeder, que se guardará en la carpeta Database/seeds

Una vez creado, al entrar a modificarlo observaremos que únicamente tiene la función run(), donde se ejecutarán los procesos que rellenaran las filas de la tabla.

Aquí en este caso, voy a incluir los registros necesarios (ya que mi plan para esta tabla es un numero finito y relativamente asequible de mantener), aunque se puede automatizar con Factorias. Así que, de momento, incluiré el siguiente código:

Nota: que no se os olvide incluir el uso de Carbon en esta clase, porque sino no funcionará. Añadid

al inicio del archivo, en la sección de uses.

Una vez generado el archivo del seed, es necesario indicar que se ejecutará. Para ello, lo primero es modificar el archivo «App\Database\seeds\DatabaseSeeder.php», en el cual hay que añadir la clase seed que acabamos de crear, así que dentro de la función run de este archivo incluiremos una línea por cada seeder que queramos ejecutar:

Una vez hecho todo esto, para ejecutar estos seeds hay tres formas principales:

O bien ejecutarlo cuando se hace un migrate:refresh (explicado debajo).

Utilizando migrates y seeds

Ahora es el momento de hacer que Laravel ejecute estas migraciones y rellenos de datos.

Para ello, el comando a ejecutar es :

Para que se ejecuten los seeds es necesario ejecutar el siguiente:

Pero si quereis regenerar la base de datos completa e incluir los cambios, lo mejor es ejecutar:

Esto hará que se reinicie todos los campos y migraciones de la base de datos.

Nota: es posible que os dé un error, en estos casos antes del migrate:refresh o de ejecutar los seeds, es recomendable ejecutar lo siguiente:

Para que se regenere el árbol de clases que utilizará luego artisan.

Conclusión

De esta forma, y tras generar todos los migrates y seeds necesarios para todos los campos y tablas de la base de datos que vaya a utilizar nuestra aplicación, estaremos preparados para poder empezar a meternos en harina para generar las rutas, controladores, modelos, etc, que va a necesitar nuestra aplicación.

Qué seguiremos con ello en el siguiente capítulo.

Gracias por seguir hasta aquí 😉

 

 

Cambio a WordPress

Bueno, pues ya realice el cambio completo, incluyendo la mayoría de las entradas.

Tan solo he dejado algunas en el tintero, que si me va apeteciendo las pondré.

También tengo accesible la versión antigua del blog, en otra dirección (que no doy por razones obvias).

Saludos

Tiendas virtuales y foro

Bueno, pues ando enfrascado en probar a ver la forma de montar una tienda virtual con algun CMS preparado para ello y que sea sencillo de manejar.

De momento, los dos que mas me gustan son Joomla! y Magento. este ultimo lo he descubierto gracias a un blog, aunque ahora no recuerdo cual… y no reencuentro la entrada.

Estoy probando Magento y la verdad que de momento tiene bastante buena pinta… Lo venden como multitienda, multimoneda y multi-idioma, y de momento estoy probandola en castellano, a ver si es verdad…

Ya os ire comentando, pero tengo algunos proyectos en mente que necesitaran esto…

Saludos!!!

Bueno, pues hoy ha tocado día de actualizaciones…

He vuelto a instalar phpbb para montar un foro en la web.

Vereís el enlace en la parte izquierda.

También voy a empezar a editar y subir esos videos que os tenia prometidos, a ver si consigo que funcione bien.

Saludos

Foro

Bueno, pues hoy ha tocado día de actualizaciones…

He vuelto a instalar phpbb para montar un foro en la web.

Vereís el enlace en la parte izquierda.

También voy a empezar a editar y subir esos videos que os tenia prometidos, a ver si consigo que funcione bien.

Saludos

Cambiando de Servidor

Bien, seguimos en pie, aunque no lo parezca.
Por fin he hecho el cambio… Ahora mismo esto que estáis leyendo esta insertado en un ubuntu 7.10 Gutsy Gibbon.
He tardado en ponerlo definitivamente, pero la razón ha sido que he estado pegándome con los servidores de correo varios para linux.
También he detectado una cantidad de comentarios fuera de lo normal en algunas entradas antiguas, mucho spam. Ni me había percatado, así que en cuanto pueda haré limpieza para que nada se pierda.
De la antigua instalación en Windows XP (que aún esta instalada y lista para funcionar, por si acaso) solamente me queda traer el egroupware, pero es que los paquetes que me instala ubuntu son de la version 1.27 y yo trabajaba con la 1.4, así que me tocará tocar alguna cosita, seguro. O sino directamente lo reinstalare en ubuntu y pista, ya que apenas tenía datos metidos.
Cosas por hacer:

  • Instalar rss: al final la primera idea no funciono, así que volvere a revisar manuales y lo volveré a tocar.
  • Comprobaciones generales: sobre todo de que los módulos de tratamiento de imágenes van bien y los archivos suben y se redimensionan.
  • Seguir con el aspecto gráfico: Vale, si, ya se que esta fea… ya iré poniendo lo que pueda.

Saludos Cordiales

Seguimos Cambiando

Las cosas de palacio van despacio…
Y es que en cuanto vaya teniendo tiempo «libre» (que buena esa eee) seguiré con el cambio de estilo, poco a poco… sin prisa pero sin pausa.
De momento ya la sección de blog funciona con ajax, y no va mal, aunque todavía tengo que sacar alguna cosa para que muestre un «cargando» o algo así para por si tarda más de lo normal.
Saludos.

Abandono los Foros

Bien, como ni yo mismo actualizo la sección de foros, a partir de este fin de semana quedara suprimida.
Si bien los comentarios los dejare en la base de datos, por si fuera necesario recuperarlos, a partir del lunes la única forma de dejar huella va a ser con los comentarios (intentare darles una vueltita también).