0 ratings0% found this document useful (0 votes) 8 views10 pagesLaravel 4
Laravel description and explanations about who to create a Laravel App4
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content,
claim it here.
Available Formats
Download as PDF or read online on Scribd
as INTRODUCCION A LARAVEL
0 Una vez que la descarga haya finalizado, haga doble clic sobre el archivo
adecuado y espere mientras se inicia el asistente de instalacion. Sera necesario
contar con privilegios de Administrador.
Advetenci de seguridad de Abi achive
‘Deven eecutar este archivo?
[ge] Nombre: C\Users\Marcele\Downlead\Compose-Stupiexe
Fdtor: Open Source Developer John Stevenson
Tipo: Aslcacién
De C\Users\Marcelo\Downloads\Compose Setup.exe
ecutar Cancer
EAregunte sempre antes de abi xe archive
a
6S.
Seater alee
0. ‘Durante la instalacion, indique la ruta donde tenga descargado PHP, que debera
estar instalado en el sistema operativo junto con la libreria php_openssl.
I Compose sup
settings check
ened ced you? and ote st
Cees acebbnbtp7.Lenenszicitaesetpee v) | Bove
‘Tiss the PP your path. Cle Neto se
www.redusers.com a1. CARACTERISTICAS E INSTALACION eas
0. Para comprobar que Composer se haya instalado correctamente, abra una
nueva interfaz de linea de comando y ejecute composer.
\sers\Warcelo\royectos>comoser create-project —Ignore-platfora-regs --prefer-dist laravel/Iaravel blog
fnseaitine Saraved_ (es 38)
Tnstalting laravel/ioravel (S:4.20): Downoding (208)
P'ptpssr?"eiiecextsts(* env") | copy(".env example", *.env");"
loading composer repositories with package information
lating. dependencies (including require-dev)
ackoge, operations: 59 installoy © updates, @ removals
“nstalling sywfony/ess-selector (v3.3.6)? Domloading (100%)
Sean Seen Sta et ae
cae ea oat
se eg eee reece ee
In Sow rate icici Bring ce
par sia ce Sag cy
Installing synfony/routing (13.3.6): Downloading. (1008)
installing synfont/process (93.3.6); Downloeding (1008)
Installing syefony/Bttp:founlation (Srseehs Oomlosting (16%)
Installing synfony/event- PRINCIPALES COMANDOS DE COMPOSER
fered ular lo) blrtetglelellell
composer install Busca un archivo denominado composer.json donde se declaran todas
ls dependeneias (naquetes de cérlign fuente) necesarias para el
proyecto, las descarga y las almacena en una carpeta llamada vendor.
composer require Recibe como parémetro el nombre de un paquete al cual busca,
descarga en la carpeta vendor y actualize el archivo composer.json
para agregarln como una nueva denendencia del prayecto.
composer update Lee todas las dependencias declaradas en composer.json,
‘comprueba si hay nuevas versiones de elas y las instala.
composer create-project | Permite crear nuevos proyectos PHP. Tiene varias opciones, entre
elias, una que nos permite especificar si queremos utilizar algun
framework en particular.
I Tabla 3, Composer nos permite ahorrar mucho tiempo automatizando tareas.
32 www.redusers.comce INTRODUCCION A LARAVEL
Crear un proyecto Laravel desde Composer
En esta ocasion crearemos un proyecto denominado blog, con la
ultima version disponible de Laravel, para lo cual descargaremos
todas las librerias necesarias. Para lograrlo, abrimos una interfaz de
comandos, nas uhicamos en la carpeta dande crearemos el proyecto,
y escribimos el siguiente comando: composer create-project
platformregs --prefer-dist laraveV/laravel blog 5.5.*
fas c\woousartens2emdee- compere cree peed grew perme peel mae Bep — oa x
users \Marcelo\Proyectos>conposer create-project --igore-platfora-reqs --prefer-dist laravel/laravel blog
stalling Taravel/laravel, (e589),
= Installing laravel/laravel (¥5.4.38): Downloading (100%)
requicesdev)
Srupdates,
SNtnstalling syefony/css-selector (v3.3.6): Dowloading (200%)
Installing tijeverkoyen/ess-to-iniine-styles, (2.2.0)! Downloading (200%)
doctrine/inflector (v1.10):
fymtony palytslicnbrering (ot-4-8)* Downloading (2090)
fon /var- duper (¥3-3-6). 00k)
«Installing jakub-onderka/php-console-color (0-1): Dowaloading (100%)
Installing Janub-ondersa/pnp-console-Righiighter’(vo-3.2): oewnlowding (2005)
{Installing dnoegel/prp-xdp-base-air (0.3): Downloading (100%)
= Installing nilde/php-parser (v3.1.0): Downloading, (108%)
Installing psr/log (1-0-2): Downloading (1003)
Installing Syefony/Sebug_(v3.9-8): Downloading (200%)
(63°3.6)2 downloading (308%)
13); Bowetoading” (1088)
5 installing Viucas/prpdotenv (02.8.0): Dovaloading (200%)
Installing symfony/routing (¥3.3-6): Downloading (100%)
{installing syefony/process (v3.3.6): Dovnloading (100%)
Installing svefoni/ntto- foundation (v3.3.6): Downloading (108%)
1 Installing Syefony/event-dlopatchen (v3.3.6): Downloading (300%)
{Installing syefony/http- kernel (v3.2.6): Downloading. (1068)
Instelling symfony/findcr(03-2:6): Downloading. (2008)
«Installing sudftmailer/suiftnalier (v5.4.8): Oownloaéing (308%)
{Installing paragonie/randon_cowat_(v2.0.10): Downloading (106%)
1 installing Pansey/utla (3.7-0)" Downloading (206%)
Installing Syefony translation (v3.3.6): Downloading (100%)
Installing nesbot/carbon (1.22.1); Downloading (106%)
I Figura 5. La creacién de un proyecto puede demorar varios minutos dependiendo
de nuestra conexion a Internet.
Composer fuera de Laravel
Composer es una librerfa para administrar dependencias en proyectos PHP: no
necesariamente tienen que ser proyectos realizados con Laravel. También nos brinda
la posibilidad de crear nuestras propias dependencias y publicarlas a través del sitio
web https://packagist.org. Es muy recomendable leer la guia https://getcomposer.
org/doc|01-basic-usage.md para entender cémo funciona Composer y de qué manera
podemns incluirlo en nuestros proyectos.
www.redusers.com 331. CARACTERISTICAS E INSTALACION ees
Si analizamos el comando ejecutado, vemos que --ignore-platform-
regs indica a Composer que no realice ninguna validacion en nuestra
maquina local para ver si ésta es compatible con Laravel. Esta
validaci6n no sera necesaria si utilizamos Homestead. En el caso
contrario, Composer analiza la maquina y nos indica si cumple con
todos los requisitos necesarios. De no ser asi, deberemos adaptarla
hasta cumplir los criterios.
La opcién ~-prefer-dist laraveV/laravel indica a Composer que el proyecto
blog que crearemos sera desarrollado con Laravel, luego de introducir
el nombre del proyecto blog indicamos que usaremos la tiltima version
LTS disponible. Si el comando se ejecuto de manera exitosa, al ingresar
en la carpeta blog veremos que se ha creado la estructura de archivos y
carpetas correspondiente.
WE CRONE eID
: \Wsers\Warcelo\Proyectos>ed blog
\Users\Marcelo\Proyectos\blog>dir
El volunen de 1a unidad C no tiene etiqueta.
ED nimero de serie del volumen es: 3ADB-70¢6
Directorio de C:\Users\arcelo\Proyectos\blog,
-
572 lew
524 lenv example
Ad lgitaverdbutes
446 “gitisnore
Sragrant
377 after.sh
5.806 aliases
np.
1.646 artisan
bootstrap
1.337 composer. json
124.125 composer lock
config
com> Setabese
376 Homestead. yan)
1.063 package.Json
41.043 phpunit xml
public
3.420 readne.nd
resources
563 server. php
storage
tests
1.460 Vagrantfile
vendor
10:55 549 webpack.aix.js
16 archivos 142.915 bytes
13 dirs 78.120.312.832 bytes libres
\Users\Nancelo\Proyectos\blop>F
@ Figura 6. Estructura de carpetas para organizar el cédigo fuente.
4 www.redusers.comces INTRODUCCION A LARAVEL
Instalar Homestead mediante Composer
Como sabemos, Vagrant nos permite declarar la configuracién de
una maquina virtual mediante un archivo. Para el caso de Homestead,
dicho archivo se encuentra empaquetado en la nube, y la forma mas
sencilla de acceder a él es mediante Composer.
Ingresamos en una interfaz de linea de comando a la carpeta donde
creamos el proyecto blog, y ejecutamos el comando composer require
laravel/homestead --dev -ignore-platform-reqs.
Wi CWRDOWaerEendoe
|the compiled services file has been removed.
} oho artisan key:generate
lapplication key, [base64:WvSonahse3VVRusnad1EHA3SGAZEuhgcadaltMyfiBe-) set successfully.
:\Users\Marcelo\Proyectos>cd blog
\Users\Narcelo\Proyectos\blog>composer require laravel/homestead --dev --ignore-platform-reqs
ising version 6.0 for laravel/honestead
./composer.json has been updated
JLcading composer repositories with package information
jpdating dependencies (including require-dev)
JPackage operations: 1 install, ® updates, © removals
~ Installing laravel/homestead (v6.0.3): Downloading (100%)
firiting tock Fite
erating optimized autoload files
> Tiluminate\Foundat ion\Coaposerscripts: :postupdate
} php artisan optinize
Joenerating optimized class loader
[the compiled services file has been removed.
\Users\Marcelo\Proyectos\bloge
@ Figura 7. Descarga de los archivos Vagrant de Homestead mediante Composer.
Este paquete nos provee de un script que analizara nuestra maquina fisica y
establecera los parametros de configuracién en un archivo denominado Homestead.
yaml, Para cjecutar dicho script en Windows, debemos utilizar el comando vendor\\
bin\homestead make.
Descarga de librerias de desarrollo
Mediante el parémetro --dev indicamos a Composer que a libreria en cuestién
seré utilizada para construir nuestro proyecto. De esta forma, podemos
diferenciar las librerfas necesarias para ejecutarlo, de aquellas que son
requeridas para construirlo. Ver mas informacién en https://getcomposer.org/
doc/04-schema.mdi#require-dev.
www.redusers.com 31. CARACTERISTICAS E INSTALACION es
Para finalizar, cjecutamos cl comando vagrant up, que descargara
¢ iniciara la maquina virtual Homestead. La primera vez el comando
podria solicitar cambios en su configuracién de sistema operativo
y/o firewall, ya que genera una interfaz de red para conectar la
méaquina virtual con la fisica.
En caso de tener problemas con las private key, debemos
comentar la linea que contiene keys: y - ~/.ssh/id_rsa utilizando el
caracter #, y la anterior a la misma, de manera que quede de la
siguiente forma
ap: 192.168.10.10
memory: 2048
cpus: 1
provider: virtualbox
authorize: ~/.ssh/id_rsa.pub
keys:
# ~ ~/.ssh/id_zsa
folders:
map: ‘C:\Users\desar\proyectos\blog’
to: /home/vagrant/blog
sites:
map: blog.app
to: /home/vagrant /blog/public
databases:
- homestead
name: blog
hostname: blog
Es normal que la primera ejecucion de vagrant up demore varios
minutos, ya que realiza la descarga de la maquina virtual.
Sera necesario ejecutar este comando cada vez que deseemos
iniciar la maquina virtual, ya sea por haberla apagado previamente
con el comando vagrant halt o por haber reiniciado la maquina
fisica. Nuestro sitio web respondera en la IP establecida en el
archivo Homestead.yaml.
36 www.redusers.comcea INTRODUCCION A LARAVEL
m= - oO x
2 ewe x
Je > © wer6s1010 t)0 7ROGHSE*- 7 BOB
DOCUMENTATION —LARACASTS. «NEWSFORGE = ciTHUB
@ Figura 8. Pantalla de inicio de Laravel en una maquina virtual Homestead.
La instalacion de Homestead puede parecer algo compleja, pero antes de llegar
a esta conclusién, repasemas todos los componentes que trae consigo Homestead
y consideremos el tiempo que demandaria instalar cada uno por separado junto
con un nuevo sistema operativo.
Tengamos en cuenta también que, al trabajar con maquinas virtuales, podemos
disponer de diferentes ambientes de trabajo sin tener que alterar nuestra
maquina fisica para cada ocasion.
Resumen Capitulo 01
En este capitulo conocimos qué es un framework, aprendimos a diferenciarlo de otros
sistemas y vimos las aplicaciones que puede tener. Luego repasamos la historia de
Laravel y las ventajas que trae consigo, y también analizamos sus caracteristicas
principales, Mas adelante, instalamos los componentes necesarios para crear nuestro
ambiente de desarrollo y generamos un proyecto blog mediante Composer. Para terminar,
vimos cémo trabajar con Homestead, la maquina virtual de Laravel, e instalamos todo lo
necesario para su ejecucién.
www.redusers.com 371. CARACTERISTICAS E INSTALACION eas
ACTIVIDADES
Test de Autoevaluacién
1. €Qué es un framework?
2. éCual es la diferencia entre un framework orientado a propésitos generales y uno
orientado a propésitos particulares? éCudl es la principal ventaja de un framework con
propésitos generales?
8. éCudles son los requerimientos necesarios para instalar Laravel?
4. 2Qué es una maquina virtual?
5. 2Qué componentes brinda Homestead?
6. Qué es VirtualBox? éLo necesitamos para desarrollar con Laravel?
7. éQué es Vagrant? éLo necesitamos para desarrollar con Laravel?
8. Qué es una dependencia? 2Como administra Laravel sus dependencias?
9. éPodemos utilizar Composer por fuera de Laravel?
10. 2Qué contiene el archivo Homestead.yaml?
Ejercicios practicos
1. Inicie VirtualBox y abra un administrador de tareas. Luego abra una interfaz de linea de
comando e inicie Homestead mediante el comando vagrant up. Observe los cambios
en VirtualBox y en el Administrador de tareas. Apague Homestead mediante el comando
vagrant halt y siga observando los cambios.
2. Abra una interfaz de linea de comando y posiciénese en una carpeta nueva vacia,
fuera del proyecto blog. Ejecute el comando composer init. Observe los parametros
requeridos y el archivo composer.json generado.
3. Enla misma carpeta del paso anterior, ejecute composer require fzaninotto/faker.
Qué cambios se produjeron en el archivo composer.json? 2Qué carpetas y/o archivos.
nuevos se generaron?
38 www.redusers.comEn este capitulo vamos a iniciar nuestro recorrido por el codigo
fuente del framework. Analizaremos la estructura de archivos
y carpetas, estudiaremos la inicializacién del sistema y veremos
las diferentes estrategias de configuraci6n. También instalaremos
componentes adicionales y abriremos un espacio para hablar
de la arquitectura del framework.2. PRIMEROS PASOS: aS
TRABAJAR CON HOMESTEAD
En el Capitulo 1 vimos la manera de instalar Homestead, la maquina
virtual oficial de Laravel, que funciona como entorno de desarrollo. En
esta seccién vamos a analizar los aspectos principales que se deben
tener en cuenta para trabajar con una maquina virtual.
Iniciar sesion
Siempre que iniciemos nuestra jornada, luego de encender la
computadora fisica, debemos iniciar la maquina virtual, lo cual se
realiza mediante el comando vagrant up desde una terminal. Una vez
iniciada la maquina virtual, debemos ejecutar el comando vagrant ssh
para poder iniciar una terminal en ella. Al ejecutar este comando,
veremos que la sesién en la terminal pasé a ser vagrant@blog:~$.
Recordemos que Homestead es creada con un sistema operativo
Ubuntu, por lo cual a partir de este momento, estaremos trabajando
con un sistema operativo basado en GNU/LINUX. La primera parte antes
del caracter @ indica el usuario con el cual estamos conectados, y la
parte posterior, el nombre que tiene la maquina virtual.
En este caso, la terminal y el proyecto se Ilaman blog; sin embargo,
esta caracteristica se establecié en el archivo Homestead.yaml, el cual se
generé cuando ejecutamos el comando vendar\\bin\\hamestead make.
+ res RarceTo Provecton Blop vagrant oF
ringing machine "blog" up with “virtualbox” provider
=> blog: Checking if box "laravel/honestead” is up to date...
Cleoring any previously set forwarded
{leering any Previously set network inefaces
Dreparing network Interfaces bared on configuration
doped ae
Adopter 2: hostonly
Forwarding ports...
0. (quest) "> 8000 (host) (adapter 1)
43 (quest) => 44300 (host) (adapter 1)
3300 (guest) => 33860 (host) Cadeoter 2)
S432 (guest) => 54320 (host) (adapter 1)
18025 (quest) => 8825 (host) (adapter 1),
E7017 (guest) => 27087 (hows), (asorter 3)
22 (quest) => 2222 (host), (adapter 3)
fonntang "pre-boot’ WM custonlzations
Booting We
Waiting for ‘machine to boot. This may take a few minutes.
SSH sername: vagrant
SSH auth method: private key
Fachine booted and ready!
I Figura I. Recordemos que el comando homestead make analiza nuestra maquina
para establecer los parémetros de Hamestead.yaml.
40 www.redusers.com