PDF de programación - Symfony 2 - Guía Rápida

Imágen de pdf Symfony 2 - Guía Rápida

Symfony 2 - Guía Rápidagráfica de visualizaciones

Actualizado el 21 de Marzo del 2018 (Publicado el 5 de Octubre del 2017)
1.074 visualizaciones desde el 5 de Octubre del 2017
347,5 KB
3 paginas
Creado hace 10a (08/01/2014)
SSyymmffoonnyy22

GG uu ííaa RRáá ppii dd aa ppoorr LLuu ii ss JJ oosséé SSáá nn cchh ee zz GG oonn zzáá llee zz

PASOS PREVIOS

INSTALACIÓN

Instalar la extensión intl:

sudo apt-get install php5-intl

Instalar APC:

sudo apt-get install php-apc

Localizar el php.ini que se está utilizando:

php -i

| grep php.ini

Editar php.ini:

date.timezone = Europe/Madrid

Reiniciar Apache:

sudo /etc/init.d/apache2 restart

Instalar curl:

sudo apt-get install curl

Instalar git:

sudo apt-get install git

Instalar composer:

curl -s https://getcomposer.org/installer | php
sudo mv composer.phar /usr/local/bin/composer

Instalación de Symfony 2:

Descargar el fichero comprimido.
Descomprimirlo en el directorio raiz de localhost que en Linux
es /var/www/
Configurar Symfony accediendo a

http://localhost/Symfony/web/config.php

Instalación mediante composer:

php composer.phar create-project symfony/framework-

standard-edition path/ 2.4.1

VARIOS

Borrar la caché (desde dentro de la carpeta del proyecto):

sudo php app/console cache:clear

PÁGINA ESTÁTICA SENCILLA

Creación del bundle:

php app/console generate:bundle

Se pulsa INTRO a todas las preguntas salvo estas dos:

Bundle namespace: LJSG24/Ejercicio01 Bundle
Configuration format (yml, xml, php, or annotation) [annotation]: yml

--------------------------------------
Edición del fichero /var/www/Symfony/src/LJSG24/Ejercicio01 Bundle/Resources/config/routing.yml
Se añade:

ljsg24_ejercicio01 _gatos:

pattern:
defaults: { _controller: LJSG24Ejercicio01 Bundle:Default:gatos }

/gatos/

--------------------------------------
Edición del fichero /var/www/Symfony/src/LJSG24/Ejercicio01 Bundle/Controller/DefaultController.php
Se añade dentro de la clase:

public function gatosAction()
{

return $this->render('LJSG24Ejercicio01 Bundle:Default:gatos.html.twig');

}

--------------------------------------
Se crea el fichero /var/www/Symfony/src/LJSG24/Ejercicio01 Bundle/Resources/views/Default/gatos.html.twig con el siguiente
contenido:
<h1 >Gatos</h1 >
<p>
El gato o gato doméstico (Felis silvestris catus) es un pequeño mamífero carnívoro de la familia Felidae.
El gato está en convivencia cercana al ser humano desde hace unos 9500 años,1 periodo superior al estimado
anteriormente, que oscilaba entre 3500 y 8000 años.
</p>
--------------------------------------
Para acceder a la aplicación desde el navegador:

http://localhost/Symfony/web/app_dev.php/gatos

IMÁGENES

Las imágenes (p. ej. gatos.jpg) se guardan en

/var/www/Symfony/web/imagenes/

Se podrían guardar directamente en
/var/www/Symfony/web/ pero es mejor tenerlas
todas agrupadas en la misma carpeta.
-------------------------------------
En gatos.html.twig se añade:
<p>
<img src="{{ asset('imagenes/gatos.jpg') }}" width="400">
</p>

PASO DE PARÁMETROS EN LA RUTA

Vamos a conseguir pasar el color de fondo de la página en la url.
-------------------------------------
Se añaden las rutas en routing.yml
Quedaría así:

ljsg24_ejercicio01 _gatos_fondo:

pattern:
defaults: { _controller: LJSG24Ejercicio01 Bundle:Default:gatos}

/gatos/fondo:{color_de_fondo}

ljsg24_ejercicio01 _gatos:

pattern:
defaults: { _controller: LJSG24Ejercicio01 Bundle:Default:gatos }

/gatos/

-------------------------------------
En gatos.html.twig se añade al principio:

<html>
<body bgcolor="{{ color_de_fondo }}">

y al final:

</body>
</html>
-------------------------------------
Se modifican los métodos en el controlador (DefaultController.php) de esta forma:

public function gatosAction($color_de_fondo = "white")
{

return $this->render('LJSG24Ejercicio01 Bundle:Default:gatos.html.twig', array('color_de_fondo' => $color_de_fondo));

}

--------------------------------------
Desde el navegador podemos indicar que queremos ver la página de gatos con fondo azul:

http://localhost/Symfony/web/app_dev.php/gatos/blue

USO DE FORMULARIOS

Vamos a realizar un configurador de vehículo.
-------------------------------------
php app/console generate:bundle
-------------------------------------
Añadimos las rutas en routing.yml

ljsg24_ejercicio04_formulario:

pattern:
defaults: { _controller: LJSG24Ejercicio04Bundle:Default:formulario }

/formulariocoche

ljsg24_ejercicio04_coche:

pattern:
defaults: { _controller: LJSG24Ejercicio04Bundle:Default:coche }

/coche

-------------------------------------
Añadimos los métodos en el controlador:

public function formularioAction()
{

return $this->render('LJSG24Ejercicio04Bundle:Default:formulariocoche.html.twig');

}

public function cocheAction()
{

$peticion = $this->getRequest();
$color = $peticion->query->get('color');
$llantas = $peticion->query->get('llantas');
$tapiceria = $peticion->query->get('tapiceria');
$moldura = $peticion->query->get('moldura');
$exterior = "imagenes/".$color.$llantas.".jpg";
$interior = "imagenes/".$tapiceria.$moldura.".jpg";
return $this->render('LJSG24Ejercicio04Bundle:Default:coche.html.twig', array('exterior' => $exterior, 'interior'

=> $interior));

}

-------------------------------------
formulariocoche.html.twig

<h2>Configurador de vehículo</h2>
<form action="{{ path('ljsg24_ejercicio04_coche') }}" method="get">

Color:<br>
<input type="radio" name="color" checked="checked" value="negro">Negro</input><br>
<input type="radio" name="color" value="rojo">Rojo</input><br>
<input type="radio" name="color" value="verde">Verde</input><br>
<hr>
Llantas:<br>
<input type="radio" name="llantas" checked="checked" value="1 8">1 8 pulgadas</input><br>
<input type="radio" name="llantas" value="21 ">21 pulgadas</input><br>
<hr>
Color de tapicería:<br>
<input type="radio" name="tapiceria" checked="checked" value="blanco">Blanco</input><br>
<input type="radio" name="tapiceria" value="berengena">Berengena</input><br>
<hr>
Molduras interiores:<br>
<input type="radio" name="moldura" checked="checked" value="madera">Madera</input><br>
<input type="radio" name="moldura" value="carbono">Fibra de carbono</input><br>
<hr>
<input type="submit" value="Aceptar">

</form>
-------------------------------------
coche.html.twig

<h2>Aquí tiene su vehículo, pase por caja por favor.</h2>
<img src="{{ asset(exterior) }}">
<img src="{{ asset(interior) }}">
  • Links de descarga
http://lwp-l.com/pdf7129

Comentarios de: Symfony 2 - Guía Rápida (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad