Validaciones en la vista
De CidesaWiki
| (2 ediciones intermedias no se muestran.) | |||
| Línea 1: | Línea 1: | ||
Para realizar las validaciones a una forma debemos: En caso de módulos generados por el propel-init-admin: Crear una carpeta llamada validate y dentro de ella crear un archivo llamado edit.yml y para otro caso módulos generados con el init-module la carpeta validate ya viene por defecto solo debemos crear el archivo .yml debe llamarse a la accion que se va a ejecutar ejemplo edit. | Para realizar las validaciones a una forma debemos: En caso de módulos generados por el propel-init-admin: Crear una carpeta llamada validate y dentro de ella crear un archivo llamado edit.yml y para otro caso módulos generados con el init-module la carpeta validate ya viene por defecto solo debemos crear el archivo .yml debe llamarse a la accion que se va a ejecutar ejemplo edit. | ||
| - | |||
| - | |||
| Línea 8: | Línea 6: | ||
methods: | methods: | ||
post: | post: | ||
| - | - " | + | - "fordefpry{codpro}" |
| - | - " | + | - "fordefpry{nompro}" |
| - | - " | + | - "fordefpry{codprg}" |
| - | - " | + | - "fordefpry{ubigeo}" |
| - | - " | + | - "fordefpry{codemp}" |
| - | - " | + | - "fordefpry{uniejepri}" |
| - | - " | + | - "fordefpry{enupro}" |
| - | - " | + | - "fordefpry{objestnueeta}" |
| - | - " | + | - "fordefpry{objestins}" |
| - | - " | + | - "fordefpry{objeesppro}" |
| - | + | - "fordefpry{objpndes}" | |
| + | - "fordefpry{respro}" | ||
| + | - "fordefpry{unimedres}" | ||
| + | - "fordefpry{benpro}" | ||
| + | - "fordefpry{codsta}" | ||
| + | |||
names: | names: | ||
| - | + | fordefpry{codpro}: | |
required: Yes | required: Yes | ||
| - | required_msg: El Código del | + | required_msg: El Código del Proyecto o Acción Centralizada no puedo estar en Blanco. |
| + | validators: UniqueValidator | ||
| - | + | fordefpry{nompro}: | |
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
| - | + | ||
required: No | required: No | ||
| - | validators: | + | validators: DescripcionValidator |
| - | + | ||
| - | + | fordefpry{codprg}: | |
| + | required: No | ||
| + | validators: ProgramaValidator | ||
| + | |||
| + | fordefpry{ubigeo}: | ||
required: No | required: No | ||
| - | validators: | + | validators: UbicacionValidator |
| - | + | fordefpry{codemp}: | |
| + | required: No | ||
| + | validators: ResponsableValidator | ||
| + | |||
| + | fordefpry{uniejepri}: | ||
| + | required: No | ||
| + | validators: EjecutoraValidator | ||
| + | |||
| + | fordefpry{enupro}: | ||
required: No | required: No | ||
| - | validators: | + | validators: EnunciadoValidator |
| - | + | fordefpry{objestnueeta}: | |
required: No | required: No | ||
| - | validators: | + | validators: NuevaEtapaValidator |
| - | + | fordefpry{objestins}: | |
required: No | required: No | ||
| - | validators: | + | validators: InstitucionalValidator |
| - | + | fordefpry{objeesppro}: | |
required: No | required: No | ||
| - | validators: | + | validators: ObjproyectoValidator |
| - | + | fordefpry{objpndes}: | |
required: No | required: No | ||
| - | validators: | + | validators: PndesValidator |
| + | |||
| + | fordefpry{respro}: | ||
| + | required: No | ||
| + | validators: ResultadoValidator | ||
| - | + | fordefpry{unimedres}: | |
| + | required: No | ||
| + | validators: MedidaValidator | ||
| + | |||
| + | fordefpry{benpro}: | ||
required: No | required: No | ||
| - | validators: | + | validators: BeneficiarioValidator |
| - | + | fordefpry{codsta}: | |
| + | required: No | ||
| + | validators: EstatusValidator | ||
| + | |||
| + | UniqueValidator: | ||
| + | class: sfPropelUniqueValidator | ||
| + | param: | ||
| + | class: Fordefpry | ||
| + | column: codpro | ||
| + | unique_error: El Código del Proyecto o Acción Centralizada ya existe. Por Favor, Cambiélo por otro. | ||
| + | |||
| + | DescripcionValidator: | ||
class: sfStringValidator | class: sfStringValidator | ||
param: | param: | ||
| - | min: | + | min: 5 |
| - | min_error: | + | min_error: El Nombre del Proyecto no puede tener menos de 5 carácteres |
| - | max: | + | max: 1000 |
| - | max_error: | + | max_error: El Nombre del Proyecto no puede tener más de 1000 carácteres |
| - | + | ProgramaValidator: | |
| + | class: CidesaExistValidator | ||
| + | param: | ||
| + | class: Fordefprg | ||
| + | column: codprg | ||
| + | unique_error: El Código del Programa no existe. | ||
| + | |||
| + | UbicacionValidator: | ||
class: sfStringValidator | class: sfStringValidator | ||
param: | param: | ||
| - | min: | + | min: 5 |
| - | min_error: | + | min_error: La Ubicación Geográfica no puede tener menos de 5 carácteres |
| - | max: | + | max: 250 |
| - | max_error: El | + | max_error: La Ubicación Geográfica no puede tener más de 250 carácteres |
| + | |||
| + | ResponsableValidator: | ||
| + | class: CidesaExistValidator | ||
| + | param: | ||
| + | class: Nphojint | ||
| + | column: codemp | ||
| + | unique_error: El Código del Responsable no existe. | ||
| + | |||
| + | EjecutoraValidator: | ||
| + | class: CidesaExistValidator | ||
| + | param: | ||
| + | class: Fordefcatpre | ||
| + | column: codcat | ||
| + | unique_error: El Código de la Unidad Ejecutora no existe. | ||
| - | + | EnunciadoValidator: | |
class: sfStringValidator | class: sfStringValidator | ||
param: | param: | ||
| - | min: | + | min: 5 |
| - | min_error: | + | min_error: El Enunciado del Problema no puede tener menos de 5 carácteres |
| - | max: | + | max: 1000 |
| - | max_error: | + | max_error: El Enunciado del Problema no puede tener más de 1000 carácteres |
| - | + | NuevaEtapaValidator: | |
class: sfStringValidator | class: sfStringValidator | ||
param: | param: | ||
| - | min: | + | min: 5 |
| - | min_error: | + | min_error: El Objetivo Estratégico Nueva Etapa no puede tener menos de 5 carácteres |
| - | max: | + | max: 1000 |
| - | max_error: | + | max_error: El Objetivo Estratégico Nueva Etapa no puede tener más de 1000 carácteres |
| - | + | ||
| - | + | InstitucionalValidator: | |
class: sfStringValidator | class: sfStringValidator | ||
param: | param: | ||
| - | min: | + | min: 5 |
| - | min_error: | + | min_error: El Objetivo Estratégico Institucional no puede tener menos de 5 carácteres |
| - | max: | + | max: 1000 |
| - | max_error: | + | max_error: El Objetivo Estratégico Institucional no puede tener más de 1000 carácteres |
| - | + | ||
| - | + | ObjproyectoValidator: | |
| - | class: | + | class: sfStringValidator |
param: | param: | ||
| - | + | min: 5 | |
| - | + | min_error: El Objetivo Específico del Proyecto no puede tener menos de 5 carácteres | |
| - | + | max: 1000 | |
| - | min: | + | max_error: El Objetivo Específico del Proyecto no puede tener más de 1000 carácteres |
| - | min_error: | + | |
| - | max: | + | PndesValidator: |
| - | max_error: El | + | class: sfStringValidator |
| - | + | param: | |
| + | min: 5 | ||
| + | min_error: El Objetivo PNDES no puede tener menos de 5 carácteres | ||
| + | max: 250 | ||
| + | max_error: El Objetivo PNDES no puede tener más de 250 carácteres | ||
| + | |||
| + | ResultadoValidator: | ||
| + | class: sfStringValidator | ||
| + | param: | ||
| + | min: 5 | ||
| + | min_error: El Resultado del Proyecto no puede tener menos de 5 carácteres | ||
| + | max: 1000 | ||
| + | max_error: El Resultado del Proyecto no puede tener más de 1000 carácteres | ||
| + | |||
| + | MedidaValidator: | ||
| + | class: CidesaExistValidator | ||
| + | param: | ||
| + | class: Fordefunimed | ||
| + | column: codunimed | ||
| + | unique_error: El Código de la Unidad de Medida no existe. | ||
| + | |||
| + | BeneficiarioValidator: | ||
| + | class: sfStringValidator | ||
| + | param: | ||
| + | min: 5 | ||
| + | min_error: El Beneficiario no puede tener menos de 5 carácteres | ||
| + | max: 250 | ||
| + | max_error: El Beneficiario no puede tener más de 250 carácteres | ||
| + | |||
| + | EstatusValidator: | ||
| + | class: CidesaExistValidator | ||
| + | param: | ||
| + | class: Fordefsta | ||
| + | column: codsta | ||
| + | unique_error: El Código del Estatus no existe. | ||
</pre> | </pre> | ||
En este ejemplo, se encuentran algunos de los Estándares de Validación(sfNumberValidator y sfStringValidator) de symfony. Los demas se encuentra en capitulo 10 Libro de Symfony. Y el código de lo que hace en cada uno de ellos, se encuentra en la siguiente dirección C:\AppServ\php5\PEAR\symfony\validator. | En este ejemplo, se encuentran algunos de los Estándares de Validación(sfNumberValidator y sfStringValidator) de symfony. Los demas se encuentra en capitulo 10 Libro de Symfony. Y el código de lo que hace en cada uno de ellos, se encuentra en la siguiente dirección C:\AppServ\php5\PEAR\symfony\validator. | ||
| - | + | == Para Validar una fecha con respecto a una Tabla == | |
| + | Se buscan en la tabla '''cpdefniv''' obteniendo los campos '''fecini''' y '''feccie''' | ||
| + | |||
<pre> | <pre> | ||
cadphart{feccot}: | cadphart{feccot}: | ||
Última versión de 14:19 29 jun 2007
Para realizar las validaciones a una forma debemos: En caso de módulos generados por el propel-init-admin: Crear una carpeta llamada validate y dentro de ella crear un archivo llamado edit.yml y para otro caso módulos generados con el init-module la carpeta validate ya viene por defecto solo debemos crear el archivo .yml debe llamarse a la accion que se va a ejecutar ejemplo edit.
El archivo edit.yml contiene lo siguiente: methods se declara el metodo post con los campos que se van a validar al momento de guardar. names se coloca cada uno de los campos con sus mensajes(si tienen y si son requeridos o no), y llamamos el validators respectivo al campo. Y al final creamos los validators segun las validaciones que tenga que hacersele a los campos.
methods:
post:
- "fordefpry{codpro}"
- "fordefpry{nompro}"
- "fordefpry{codprg}"
- "fordefpry{ubigeo}"
- "fordefpry{codemp}"
- "fordefpry{uniejepri}"
- "fordefpry{enupro}"
- "fordefpry{objestnueeta}"
- "fordefpry{objestins}"
- "fordefpry{objeesppro}"
- "fordefpry{objpndes}"
- "fordefpry{respro}"
- "fordefpry{unimedres}"
- "fordefpry{benpro}"
- "fordefpry{codsta}"
names:
fordefpry{codpro}:
required: Yes
required_msg: El Código del Proyecto o Acción Centralizada no puedo estar en Blanco.
validators: UniqueValidator
fordefpry{nompro}:
required: No
validators: DescripcionValidator
fordefpry{codprg}:
required: No
validators: ProgramaValidator
fordefpry{ubigeo}:
required: No
validators: UbicacionValidator
fordefpry{codemp}:
required: No
validators: ResponsableValidator
fordefpry{uniejepri}:
required: No
validators: EjecutoraValidator
fordefpry{enupro}:
required: No
validators: EnunciadoValidator
fordefpry{objestnueeta}:
required: No
validators: NuevaEtapaValidator
fordefpry{objestins}:
required: No
validators: InstitucionalValidator
fordefpry{objeesppro}:
required: No
validators: ObjproyectoValidator
fordefpry{objpndes}:
required: No
validators: PndesValidator
fordefpry{respro}:
required: No
validators: ResultadoValidator
fordefpry{unimedres}:
required: No
validators: MedidaValidator
fordefpry{benpro}:
required: No
validators: BeneficiarioValidator
fordefpry{codsta}:
required: No
validators: EstatusValidator
UniqueValidator:
class: sfPropelUniqueValidator
param:
class: Fordefpry
column: codpro
unique_error: El Código del Proyecto o Acción Centralizada ya existe. Por Favor, Cambiélo por otro.
DescripcionValidator:
class: sfStringValidator
param:
min: 5
min_error: El Nombre del Proyecto no puede tener menos de 5 carácteres
max: 1000
max_error: El Nombre del Proyecto no puede tener más de 1000 carácteres
ProgramaValidator:
class: CidesaExistValidator
param:
class: Fordefprg
column: codprg
unique_error: El Código del Programa no existe.
UbicacionValidator:
class: sfStringValidator
param:
min: 5
min_error: La Ubicación Geográfica no puede tener menos de 5 carácteres
max: 250
max_error: La Ubicación Geográfica no puede tener más de 250 carácteres
ResponsableValidator:
class: CidesaExistValidator
param:
class: Nphojint
column: codemp
unique_error: El Código del Responsable no existe.
EjecutoraValidator:
class: CidesaExistValidator
param:
class: Fordefcatpre
column: codcat
unique_error: El Código de la Unidad Ejecutora no existe.
EnunciadoValidator:
class: sfStringValidator
param:
min: 5
min_error: El Enunciado del Problema no puede tener menos de 5 carácteres
max: 1000
max_error: El Enunciado del Problema no puede tener más de 1000 carácteres
NuevaEtapaValidator:
class: sfStringValidator
param:
min: 5
min_error: El Objetivo Estratégico Nueva Etapa no puede tener menos de 5 carácteres
max: 1000
max_error: El Objetivo Estratégico Nueva Etapa no puede tener más de 1000 carácteres
InstitucionalValidator:
class: sfStringValidator
param:
min: 5
min_error: El Objetivo Estratégico Institucional no puede tener menos de 5 carácteres
max: 1000
max_error: El Objetivo Estratégico Institucional no puede tener más de 1000 carácteres
ObjproyectoValidator:
class: sfStringValidator
param:
min: 5
min_error: El Objetivo Específico del Proyecto no puede tener menos de 5 carácteres
max: 1000
max_error: El Objetivo Específico del Proyecto no puede tener más de 1000 carácteres
PndesValidator:
class: sfStringValidator
param:
min: 5
min_error: El Objetivo PNDES no puede tener menos de 5 carácteres
max: 250
max_error: El Objetivo PNDES no puede tener más de 250 carácteres
ResultadoValidator:
class: sfStringValidator
param:
min: 5
min_error: El Resultado del Proyecto no puede tener menos de 5 carácteres
max: 1000
max_error: El Resultado del Proyecto no puede tener más de 1000 carácteres
MedidaValidator:
class: CidesaExistValidator
param:
class: Fordefunimed
column: codunimed
unique_error: El Código de la Unidad de Medida no existe.
BeneficiarioValidator:
class: sfStringValidator
param:
min: 5
min_error: El Beneficiario no puede tener menos de 5 carácteres
max: 250
max_error: El Beneficiario no puede tener más de 250 carácteres
EstatusValidator:
class: CidesaExistValidator
param:
class: Fordefsta
column: codsta
unique_error: El Código del Estatus no existe.
En este ejemplo, se encuentran algunos de los Estándares de Validación(sfNumberValidator y sfStringValidator) de symfony. Los demas se encuentra en capitulo 10 Libro de Symfony. Y el código de lo que hace en cada uno de ellos, se encuentra en la siguiente dirección C:\AppServ\php5\PEAR\symfony\validator.
Para Validar una fecha con respecto a una Tabla
Se buscan en la tabla cpdefniv obteniendo los campos fecini y feccie
cadphart{feccot}:
required: Yes
required_msg: La Fecha no puedo estar en Blanco
validators: FechaValidator
FechaValidator:
class: CidesaDateValidator
param:
class: Cpdefniv
columnmin: fecini
columnmax: feccie
min_error: La Fecha Especificada no puede ser Menor a la Fecha de Inicio del Período
max_error: La Fecha Especificada no puede ser Mayor a la Fecha de Inicio del Período
date_error: Fecha Inválida
--Desi 16:23 26 abr 2007 (VET)