SowerPHP

Framework PHP hecho en Chile

Herramientas de usuario

Herramientas del sitio


howto:generacion_de_codigo

Generación automática de código

La generación automática de código permite reducir el tiempo de desarrollo creando el código necesario según el modelo de la base de datos. Por cada tabla en la base de datos se generarán 3 archivos con código, supongamos tabla usuario, entonces se generarán:

  • Controller/Usuarios.php: controlador que extiende a Controller_Maintainer, provee las acciones para acceder al CRUD (listar, crear, editar y eliminar).
  • Model/Usuario.php: modelo singular, para acciones con un único registro de la tabla usuario. Provee automáticamente operaciones CRUD (new(), save() y delete()) al extender la clase Model.
  • Model/Usuarios.php: modelo plural, para acciones con varios registros de la tabla usuario. Provee automáticamente el método Model_Usuarios::getList() y otros para obtener máximo, promedio o contar registros. Lo anterior al extender la clase Model_Plural.

Ninguno de los archivos es sobreescrito al generar el código si dicho archivo ya existe.

El generador de código no genera vistas, ya que para los métodos CRUD utilizan unas vistas genéricas de mantenedores.

Pasos para generar el código de la tabla usuario

Importante: se asume que la base de datos está creada y con el esquema de la tabla usuario creado. Además se debe revisar la configuración de la base de datos en Config/core.php.

El generador de código está disponible sólo si se utiliza la extensión oficial app. Si no está configurada en el proyecto se debe agregar, para esto se debe editar el archivo webroot/index.php y Shell/shell.php dejando la variable $_EXTENSIONS como sigue:

$_EXTENSIONS = ['sowerphp/app', 'sowerphp/general'];

Para generar el código se debe ejecutar desde el directorio website:

$ Shell/shell.php codeGenerator

Esto consultará a que tablas se desea generar el código y donde se desea guardar el código generado.

Abrir el proyecto en el navegador y se podrá acceder al mantenedor del modelo con http://example.com/usuarios/listar

Si el código generado se ubico en algún módulo o submódulo se deberá agregar a la dirección, ejemplo: tabla de usuarios tiene su mantenedor en el módulo Sistema.Usuarios, o sea se accede como http://example.com/sistema/usuarios/usuarios/listar

howto/generacion_de_codigo.txt · Última modificación: 2017/06/15 18:48 por delaf