Hace unos días buscando como optimizar mas aún la rapidez que posee Symfony2, vi en la documentacion oficial que ofrecian la posibilidad de agregar APC para aumentar el rendimiento, si bien no indicaban como instalarlo, era cosa de buscar y probar.
Category Archives: symfony2
VISUALIZAR PDF EN UN IFRAME SYMFONY2
Hace algunos dias tuve este dilema, mi aplicacion generaba varios PDF, los cuales se guardaban en una subcarpeta dentro de la carpeta web de la aplicacion, pues bien, los PDF existian, eran accesibles para la aplicacion pero… ¿Como se los mostraba al Usuario? busque varias formas clasicas en PHP para incrustar el PDF en una pagina web y que fueran visibles como si estuvieramos viendo un PDF online o un documento word pero debido al sistema de rutas que maneja Symfony2 me era un poco problematico.
Rutas absolutas en Twig
Muchas veces nos vemos en la necesidad de generar una ruta absoluta de una imagen o un CSS por ejemplo para poder exportarla a PDF ya que estos no toman las rutas relativas, entonces, que hacemos? si estamos trabajando con Symfony2, especificamente para las versiones 2.5 en adelante ya existe una solucion a esto pero para las anteriores por ejemplo la 2.3 aun estamos con estos problemas.
Ordenar un array de objectos en Symfony2
Mientras estaba desarrollando un proyecto en Symfony2, tuve la necesidad de agrupar dos Entidades que tenian informacion similar, por ejemplo tenia una Entidad Liquidacion y otra LiquidacionesSA, esta ultima simulaba una Liquidacion pero contenia otra informacion, ambas tenian un mes, un año, un codigo y estaban asociadas a una Entidad padre llamada LiquidacionResumen, el problema fue cuando necesite listar todas las Liquidaciones que tenia LiquidacionResumen en donde debia incluir tanto las Entidades Liquidacion y LiquidacionSA, obviamente debian ir ordenadas por codigo para mostrar una concordancia correlativa entre ellas, por ultimo mencionar que la asociacion entre ellas devolvia un ArrayCollection.
Ocultar carpeta «web» de la URL en Symfony2
En un post anterior, vimos como quitar el «app.php/app_dev.php» de la URL, pero, que sucede si queremos que nuestras URL se vean aun mas limpias, por ejemplo, si tenemos una URL www.hola.com/web/home/ idealmente lo mejor seria que mostrase solo www.hola.com/home/ cierto? ¡pues claro! a nuestros Usuarios no les parecera muy lindo que se vea «web» en nuestra URL.
Castear un String a Entero con Doctrine
El problema es el siguiente, teniendo un campo String en donde se guarda un campo numerico se requeria ordenar por este, al ser String se ordenaba de una manera «incorrecta», en cierto modo es correcto pero dado el contenido no era lo esperado por el Usuario. Lo mas logico seria dejar este campo como Entero y listo, pero el problema es que la Base de Datos contiene mucha informacion y la persona que la hizo en su momento lo definio asi, por lo tanto, no nos dejaron cambiarla, asi que asumimos que seria asi.
Y bueno, buscando informacion sobre como castear un string a entero con Doctrine 2 en Symfony 2, no encontre ninguna forma directa ya que por lo visto no existe, la unica forma que logre encontrar es creando una funcion personalizada.
knp_paginator con consulta SQL personalizada (createNativeQuery)
El Bundle KnpPaginator es una excelente ayuda que nos permite paginar de una forma bastante amigable y facil, normalmente su uso se refiera a pasarle una query que formamos mediante createQuery y este la procesa y nos entrega el resultado paginado segun los parametros que definamos pero… ¿Que sucede cuando deseamos pasarle una consulta personalizada? la respuesta es tajante, no lo soporta, pero nos entrega herramientas para hacerlo.
Quitar controlador frontal de la URL
En su momento vimos como redireccionar a la carpeta web cuando alguien accedia a nuestro proyecto sin escribir /web, pero que sucede si queremos tener nuestras URL mas limpias sin incluir el controlador frontal
Redireccionar a la carpeta WEB
Cuando ya tenemos nuestros proyecto en Symfony2 listo, nos queda solo un detalle…
¿Qué pasa si algun Usuario quita el /web de la URL?
Envio Errores por Correo en Symfony2
Una de las cosas que más requeria cuando estaba creando mi proyecto en Symfony2, era el tema de saber cuando ocurria un error lo enviara por email, pero de una manera legible y sobre todo con información completa. Luego de buscar y buscar varios Bundle me encontre con ElaoErrorNotifierBundle.