miércoles, 17 de diciembre de 2008

Recomendaciones al momento de versionar proyectos en Symfony en distintos sistemas operativos

Caso particular. Ubuntu 8.10 / WinXP versionando con Subversion.

  • Una cosa que siempre nos pasa es que aveces cuando se crea el proyecto por ejemplo con eclipse en WinXP, es que hay que configurar el proyecto de eclipse para que use UTF-8 para la codificacion de los archivos por que sino cuando se hagan modificaciones en XP y estas suban al servidor Linux te van a aparecer caracteres extraños.
  • Cuando creen el proyecto symfony renombra el ProjectConfiguration.php a ProjectConfiguration.php.dist o algo asi, y que cada persona haga una copia y la agregue al svn:ignore para que cada uno configure su proyecto a su gusto, lo mismo para databases.yml y propel.ini, no olvidar agregar el directorio cache y log, al svn:ignore tambien y que antes de hacer el checkout por parte de cualquier persona limpien el proyecto symfony, esto es ejecutar "symfony cc"
  • Otra cosa que me parece util, por que en eclipse es medio molesto estan actualizando el proyecto es agregar al svn ignore los directorios "base" de los directorios donde se guardan los archivos del modelo y de los formularios, sino entonces que cada uno se asegure de no subir al servidor los base, ya que causan conflictos cuando se hacen bastantes modificaciones al esquema y se regenera el modelo de la BD.
Estos son algunos consejos tomados de una conversación acerca del versionado de código, los pongo a consideración para ser discutidos, igual son aplicables a la hora de utilizar otro servidor de versiones como CVS.

Aportes por: Leonardo Diaz, participante del foro de Symfony-es.

miércoles, 10 de diciembre de 2008

Introduccion a Control de Versiones con SVN

Este es el libro rojo de SVN esta en español y explica a profundidad los conceptos de repositorio y versionado de código.

http://svnbook.red-bean.com/nightly/es/svn-ch-2-sect-1.html

En este capitulo explica sobre las ramas de versiones

http://svnbook.red-bean.com/nightly/es/svn-ch-4.html

jueves, 4 de diciembre de 2008

Documentacion Voz Cliente

Este es el documento de analisis que hemos desarrollado para la aplicación de voz del cliente

vozdelcliente.doc

miércoles, 3 de diciembre de 2008

Diseño de interfases web con balsamiq mockups

Balsamiq mockups es una práctica herramienta para contruir interfases web de manera sencilla y rápida, así podemos definir con el usuario final aspectos de usabilidad y requerimientos de forma sencilla y rápida sin necesidad de invertir mucho en prototipos.



puedes probarlo aqui

martes, 25 de noviembre de 2008

TALLER LA VOZ DEL CLIENTE

Requerimientos

*Diligenciar la Voz del cliente
*Recepcionar la Voz del Cliente
*Dilingenciar Respuesta
*Generar notificación de la respuesta (correo,impreso)
*Confirmar Recepción
*Enviar notificaciones por correo de nueva voz al responsable del proceso
*Estadisticas

Requerimientos no funcionales

*Manejo de perfiles
*La seguridad del sitio web prevenir accesos no contralados al sistema
*Permita el manejo de sesiones.
*Las tablas tengan campos de auditoria



Nota:La firma seria un codigo autogenerado.

martes, 18 de noviembre de 2008

CONFIGURACION DEL SERVIDOR WEB

CAPACITACION 18 DE NOVIEMBRE DE 2008


*C:\wamp\bin\apache\apache 2.2.8\httpd.conf se busca la linea Virtual hosts y se quita el comentario a
include conf\extra\httpd-vhosts.conf

Para cada proyecto nuevo hay que agregar a éste archivo un host virtual

*C:\wamp\bin\apache\apache 2.2.8\extra\http-vhosts.conf y adicionamos

<VirtualHost *:80>

ServerName blog

DocumentRoot "C:\wamp\www\blog\web"

DirectoryIndex index.php


Alias /sf C:\wamp\bin\php\php5.2.6\data\symfony\web\sf

<Directory "C:\wamp\bin\php\php5.2.6\data\symfony\web\sf">

AllowOverride All

Allow from All

</Directory>


<Directory "C:\wamp\www\blog\web">

AllowOverride All

Allow from All

</Directory>

</VirtualHost>



*Luego vamos a C:\WINDOWS\system32\drivers\etc\host y se agrega cada proyecto que se va a crear

127.0.0.1 blog


*Por ultimo se reinicia el Wamp para ver los cambios y se accede al proyecto http://blog/

CREACION DEL PROYECTO Y LA BASE DE DATOS

CAPACITACION 14 DE NOVIEMBRE 2008

*CREAR EN LA CARPETA C:\wamp\www la carpeta blog (Carpeta del proyecto)

*ENTRAMOS A MIPC- PROPIEDADES - OPCIONES AVANZADAS Y SE AGREGA A LA VARIABLE DE AMBIENTE PATH C:\wamp\php\php 5.2.6

*CERRAR LA VENTANA DE CMD SI ESTA ABIERTA.

*DESPUES EN CMD SE EJECUTA:

C:\wamp\www\blog>symfony init-project blog (Observamos toda la estructura de carpetas que se crean en la carpeta blog)


*ESTRUCTURA DEL PROYECTO

C:\wamp\www\blog>symfony init-app frontend

C:\wamp\www\blog>symfony init-app backend


*CONFIGURACION DE LA BASE DE DATOS

Se crea la base de datos por PHPMYADMIN el usuario se llama ublog y nombre de la BD blog

Entramos a C:\wamp\www\blog\config\database.yml y agregamos

all:
propel:
class: sfPropelDatabase
param:
classname: PropelPDO
dsn: mysql:dbname=blog;host=localhost
username: ublog
password: 1234
encoding: utf8
persistent: true
pooling: true

NOTA:"No se debe tener varias instalaciones de php en el PATH porque presenta problemas en la estructura de Symfony"


Entramos a C:\wamo\www\blog\config\schema.yml y agregamos

propel:
blog_articulo:
_attributes: { phpName: Articulo }
id:
titulo: varchar(255)
contenido: longvarchar
created_at:
blog_comentario:
_attributes: { phpName: Comentario }
id:
articulo_id:
autor: varchar(255)
contenido: longvarchar
created_at:


*DESPUES VAMOS A CMD Y EJECUTAMOS

C:\wamp\www\blog>symfony propel-build-model
>> schema converting "C:/wamp/www/blog/config/schema.yml" to XML
>> schema putting C:/wamp/www/blog/config/generated-schema.xml
>> propel Running "om" phing task
[propel-om] Could not perform XLST transformation. Make sure PHP has been compi
led/configured to support XSLT.
>> file- C:/wamp/www/blog/config/generated-schema.xml
>> autoload reloading autoloading


C:\wamp\www\blog>symfony propel-build-sql
>> schema converting "C:/wamp/www/blog/config/schema.yml" to XML
>> schema putting C:/wamp/www/blog/config/generated-schema.xml
>> propel Running "sql" phing task
[propel-sql] Could not perform XLST transformation. Make sure PHP has been comp
iled/configured to support XSLT.
>> file- C:/wamp/www/blog/config/generated-schema.xml


*POR ULTIMO ENTRAMOS A
C:\wamp\www\blog\data\sql y miramos el archivo lib.model.schema.sql se copia el texto de la BD y se ejecuta por phpMyAdmin

Configuracion de Host Virtual

En esta url se aclara como se configura el host virtual con algunos paso que faltan en el tutorial de la practica 1

http://onedgewithsanity.blogspot.com/2008/08/getting-started-with-symfony.html

jueves, 13 de noviembre de 2008

MANUAL PASO A PASO INSTALACION PEAR Y SYMFONY

CAPACITACION 13 DE NOVIEMBRE DE 2008

INSTALACION DE WAMPSERVER 2.0 (http://www.wampserver.com/)

INSTALACION DE PEAR


ENTRAMOS A CMD Y EJECUTAMOS

C:\wamp\bin\php\php5.2.6>go-pear

Are you installing a system-wide PEAR or a local copy?
(systemlocal) [system] :

Presionamos ENTER

Below is a suggested file layout for your new PEAR installation. To
change individual locations, type the number in front of the
directory. Type 'all' to change all of them or simply press Enter to
accept these locations.

1. Installation base ($prefix) : C:\wamp\bin\php\php5.2.6
2. Temporary directory for processing : C:\wamp\bin\php\php5.2.6\tmp
3. Temporary directory for downloads : C:\wamp\bin\php\php5.2.6\tmp
4. Binaries directory : C:\wamp\bin\php\php5.2.6
5. PHP code directory ($php_dir) : C:\wamp\bin\php\php5.2.6\pear
6. Documentation directory : C:\wamp\bin\php\php5.2.6\docs
7. Data directory : C:\wamp\bin\php\php5.2.6\data
8. User-modifiable configuration files directory : C:\wamp\bin\php\php5.2.6\cfg
9. Public Web Files directory : C:\wamp\bin\php\php5.2.6\www
10. Tests directory : C:\wamp\bin\php\php5.2.6\tests
11. Name of configuration file : C:\WINDOWS\pear.ini
12. Path to CLI php.exe : C:\wamp\bin\php\php5.2.6\.

1-12, 'all' or Enter to continue:
Would you like to alter php.ini ? [Y/n] :

Escribe Y

php.ini include_path updated.

Current include path : .;C:\php5\pear
Configured directory : C:\wamp\bin\php\php5.2.6\pear
Currently used php.ini (guess) : C:\wamp\bin\php\php5.2.6\php.ini
Press Enter to continue:

** WARNING! Old version found at C:\wamp\bin\php\php5.2.6, please remove it or b
e sure to use the new c:\wamp\bin\php\php5.2.6\pear.bat command

The 'pear' command is now at your service at c:\wamp\bin\php\php5.2.6\pear.bat

** The 'pear' command is not currently in your PATH, so you need to
** use 'c:\wamp\bin\php\php5.2.6\pear.bat' until you have added
** 'C:\wamp\bin\php\php5.2.6' to your PATH environment variable.

Run it without parameters to see the available actions, try 'pear list'
to see what packages are installed, or 'pear help' for help.

For more information about PEAR, see:

http://pear.php.net/faq.php
http://pear.php.net/manual/

Thanks for using go-pear!



* WINDOWS ENVIRONMENT VARIABLES *
For convenience, a REG file is available under C:\wamp\bin\php\php5.2.6\PEAR_ENV
.reg .
This file creates ENV variables for the current user.

Double-click this file to add it to the current user registry.

Presione una tecla para continuar . . .


  • DESPUES ENTRAMOS A LA CARPETA C:/wamp/bin/php/php 5.2.6 y le damos doble click a PEAR_ENV.reg
  • NOTA:SINO HA SIDO CREADO VOLVER A REALIZAR POR CMD C:\wamp\bin\php\php5.2.6>go-pear
  • LUEGO SE COPIA EL ARCHIVO QUE ESTA C:/wamp/bin/php/php 5.2.6/pear.bat EN C:/WINDOWS/SYSTEM32

REGRESAMOS A LA VENTANA DE LINEA DE COMANDO Y EJECUTAMOS

C:\>pear config-set http_proxy HTTP://usuario_intranet:clave_intranet@10.25.2.20:3128

config-set succeeded


INSTALACION DE SYMFONY


C:\>pear channel-discover pear.symfony-project.com

Adding Channel "pear.symfony-project.com" succeeded
Discovery of channel "pear.symfony-project.com" succeeded

C:\>pear install symfony/symfony-1.2.0

downloading symfony-1.2.0.tgz ...
Starting to download symfony-1.2.0.tgz

Adicionar la variable de Ambiente

Debemos adicionar al final de la variable de ambiente llamada "path" la siguiente linea:
C:\wamp\bin\php\php5.2.6

Configurando Pear en Wamp con proxy

Este tutorial explica paso a paso la instalación de pear en wamp

http://blog.phpleo.com/2007/08/02/instalando-pear-en-windows/

Esta es la linea de comando para configurar el proxy corporativo

pear config-set http_proxy HTTP://user:pass@domain:port

martes, 11 de noviembre de 2008

Otro Framework a contemplar

Buscando entre otras opciones de Frameworks de desarrollo, y leyendo sobre cual seria otra opción diferente a Symfony, tenemos Cake PHP.

Aunque su documentación en español no es muy extensa a diferencia de Symfony, aca les dejo un vínculo con el tutorial oficial que se encuentra en nuestro idioma.

http://manual.cakephp.org/es/view/4/Comenzando-con-CakePHP

lunes, 10 de noviembre de 2008

Comparativa entre varios Frameworks

Aca les dejo un articulo de comparativas entre otros frameworks de desarrollo para PHP.

http://www.dustinweber.com/cakephp/the-best-php-framework-is-symfony-really-it/

Aunque hasta el momento he visto que el framework del que mejor hablan es symfony, es bueno tener comparativas asi. Esto demuestra que no solo existe este Framework, sino otros que tienen mucha fuerza en la parte de desarrollo Web en PHP.

sábado, 8 de noviembre de 2008

Symfony 1.2 : Dios salve a los formularios anidados

En symfony 1.1, se introdujo el nuevo sub-framework de formularios. un gran paso para symfony, un poco mas complicado de manejar; pero con la nueva versión prometen tenerlo mas automatizado.

Aca les dejo el vínculo del artículo completo:

http://www.puentesdiaz.com.ar/blog/2008/11/06/symfony-12-dios-salve-a-los-formularios-anidados/

viernes, 7 de noviembre de 2008

Symfony 1.2 Bondades de Doctrine

Aca les dejo un vínculo para que comencemos a mirar a Doctrine como un ORM para el desarrollo de las aplicaciones de la empresa.

http://www.puentesdiaz.com.ar/blog/2008/11/07/symfony-12-bondades-de-doctrine/

martes, 4 de noviembre de 2008

Una presentacion sobre el ORM Doctrine

Acta Reunión 2 - 04-11-2008 - Grupo de Desarrollo Web

  • Revisar la compatibilidad de Symfony.
  • Instalar de manera personalizada el Symfony Sandbox.
  • Instalar WAMP Server 2.0
  • Realizar taller maestros del Web.