Symfony2 desde 0: Plantilla base
Ene20

Symfony2 desde 0: Plantilla base

Definiremos la plantilla base para nuestras vistas en el fichero app/Resources/views/plantilla.html.twig En el definiremos algunos bloques, montaremos una navbar con Bootstrap, y el formulario de login. <!DOCTYPE HTML> <html lang="es"> <head> <meta charset="utf8"/> <title>{% block title %} Blog en Symfony2 - victorroblesweb.es{% endblock %}</title> <!-- jQuery CDN --> <script src="//ajax.googleapis.com/ajax/libs/jquery/1.11.2/jquery.min.js"></script> <!-- Bootstrap CDN --> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap.min.css"> <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/css/bootstrap-theme.min.css"> <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.1/js/bootstrap.min.js"></script> </head> <body> <header> <nav class="navbar navbar-default"> <div...

Leer más
Symfony2 desde 0: Relaciones en Doctrine
Ene19

Symfony2 desde 0: Relaciones en Doctrine

Hemos generado las entidades automáticamente y también hemos indicado que la definición de estas estará en archivos yml. Ahora vamos a ver las relaciones en Doctrine que utilizaremos para el blog. Src/Web/BlogBundle/Resources/config/doctrine/Posts.orm.yml aquí tenemos la definición de cada campo y de las relaciones. Web\BlogBundle\Entity\Posts: type: entity table: posts indexes: fk_category_post: columns: - category_id fk_user_post: columns: - user_id id: id: type: bigint nullable: false unsigned: false id: true generator: strategy:...

Leer más
Symfony2 desde 0: Crear bundle y generar entidades
Ene18

Symfony2 desde 0: Crear bundle y generar entidades

Lo que realmente cuesta de pillar a la hora de programar con un framework tan potente como Symfony2 es el proceso de creación de una aplicación web con el. Eso es siempre lo que más me cuesta de entender cuando empiezo a aprender una tecnología. Pues bien voy a comenzar a publicar una serie de posts en los que desarrollaremos una aplicación web con Symfony2 desde 0 y de...

Leer más
API Rest con Slim
Ene16

API Rest con Slim

Vamos a ver como crear un API Rest con Slim. REST, REpresentational State Transfer, es una arquitectura de desarrollo web basada en el estándar HTTP. REST nos permite crear servicios y aplicaciones que pueden ser usadas por cualquier dispositivo o cliente que entienda HTTP, por lo que es muy simple y flexible de usar. REST cuenta con muchos métodos para utilizar, en concreto los métodos disponibles en el protocolo...

Leer más
Instalar Slim Framework
Ene15

Instalar Slim Framework

Slim es un micro-framework para PHP que nos ayuda a desarrollar de forma más rápida aplicaciones web y APIs. Sus principales características son las siguientes: Es muy sencillo. Sistema de rutas potente. Rutas Restful. Tiene mensajes flash. Renderizado de vistas. Veamos como instalar Slim Framework en Windows. En Linux el proceso es más sencillo si cabe. Primero que todo debemos instalar php, composer y git en nuestro sistema y...

Leer más
Validar formularios en Symfony2
Ene14

Validar formularios en Symfony2

Un aspecto fundamental a la hora de trabajar con formularios es la validación de los datos que llegan de los mismos. Veamos como validar formularios en Symfony2. Tenemos este formulario creado. <?php namespace Pruebas\EjemploBundle\Form; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\OptionsResolver\OptionsResolverInterface; use Doctrine\ORM\EntityRepository; class PostsType extends AbstractType { /** * @param FormBuilderInterface $builder * @param array $options */ public function buildForm(FormBuilderInterface $builder, array $options) { $builder ->add('title','text',array("required"=>false, 'attr' => array('class'=>'form-control')...

Leer más
Personalizar formularios en la vista en Symfony2
Ene13

Personalizar formularios en la vista en Symfony2

Personalizar formularios en la vista en Symfony2 Hoy veremos como personalizar formularios en la vista en Symfony2. Ya tenemos nuestro formulario creado y con el código necesario en el controlador. <?php namespace Pruebas\EjemploBundle\Form; use Symfony\Component\Form\AbstractType; use Symfony\Component\Form\FormBuilderInterface; use Symfony\Component\OptionsResolver\OptionsResolverInterface; class PostsType extends AbstractType { /** * @param FormBuilderInterface $builder * @param array $options */ public function buildForm(FormBuilderInterface $builder, array $options) { $builder ->add('title','text',array("required"=>true, 'attr' => array('class'=>'form-control') )) ->add('description','textarea',array("required"=>true, 'attr'...

Leer más
Crear formularios en Symfony2
Ene12

Crear formularios en Symfony2

Los formularios son un aspecto fundamental dentro del desarrollo de aplicaciones web y por eso es tan importante que un framework nos solucione problemas y nos agilice el trabajo con ellos. Ahora veremos como crear formularios en Symfony2. En Symfony2 tenemos un comando para casi cualquier cosa, para crear un formulario en Symfony2 tenemos el comando: php app/console doctrine:generate:form NamespaceDeMiBundle:Entidad Esto nos generará una clase dentro del directorio Form...

Leer más
var_dump en Twig
Ene11

var_dump en Twig

Veamos como hacer un var_dump en Twig, ya que es muy necesario a la hora de programar en PHP. {# var_dump() en Twig #} {{ dump(posts) }} Symfony nos pintará algo así: ¿Quieres más? Vídeo Curso de Symfony3 ¡Domina el framework PHP más...

Leer más
Variables superglobales en Twig
Ene10

Variables superglobales en Twig

Podemos consergir los valores de diversas variables superglobales en Twig. Conseguir datos del usuario identificado: app.user Conseguir datos de get y post: app.request app.request.get('foo') //get app.request.request.get('foo') //post Sesiones: app.session Otros: app.environment app.debug ¿Quieres más? Vídeo Curso de Symfony3 ¡Domina el framework PHP más completo! Más información: Symfony2 Cheatsheet...

Leer más
Plantillas en Symfony2
Ene09

Plantillas en Symfony2

Las plantillas en Symfony2 se pueden definir de manera global en el directorio app/Resources/views/default/ y con twig podemos definir una serie de bloques que luego serán utilizados en las vistas normales para “rellenar” esa plantilla. Veamos un ejemplo. Plantilla.html.twig <!DOCTYPE HTML> <html lang="es"> <head> <meta charset="utf8"/> <title>{% block title %} Plantillas en Symfony2 {% endblock %}</title> </head> <body> <div class="content">{%block content %} Contenido vacio por defecto {%endblock%}</div> </body> </html>...

Leer más
Vistas en Symfony2
Ene08

Vistas en Symfony2

Las vistas en Symfony2 se colocan en el directorio views de nuestro Bundle y dentro de un directorio con el nombre del controlador al que corresponden. En la acción devolvemos el render de la vista y le pasamos los parámetros, de esta forma: return $this->render("PruebasEjemploBundle:Default:listar.html.twig", array( "posts"=>$po )); Después en la vista con Twig podremos hacer muchas cosas: {# Comentario en Twig Estamos en MIBUNDLE/views/Default/listar.html.twig #} {# Imprimir en...

Leer más