Cambios Pendientes Spirit
De KumbiaPHP Framework Wiki
Revisión del 15:47 3 oct 2009 de Joanhey (discusión | contribuciones) (→Cambios Pendientes KumbiaPHP versión 1.0 Spirit)
Cambios Pendientes KumbiaPHP versión 1.0 Spirit
- Cambiar en dir views:
- templates, partials y errors por _shared y ponerlos dentro o no se pueden usar esos nombres para controllers
- en View para usar el set_response tambien usar _xxx. ejemplo: views/controller/_rss/action
- Proposicion crear tambien un dir default(u otro nombre) dentro del _shared, para tener views por defecto si no existe para esa accion en su dir views/controller/action.
Por ejemplo si no tiene index.php cargar el shared/default/index.phmtl si existe. Otro, un xml.phtml que podria usar cualquier accion de cualquier controller.
- Terminar el scaffold
- ActiveRecord:
- Eliminar ereg, eregi, ereg_xxx del codigo
- Ahora los modelos llevaran el include_once arriba para la clase que necesiten
- Mirar si podemos pasarle algo del nuevo ActiveRecord
- Crear convencion _up en activeRecord para upload de archivos.
- Helpers:
- Crear alias e para el echo, igual como ahora el h para htmlspecialchars
- Este es mejor:
crear alias eh para que haga las 2 cosas de un golpe, el echo y el htmlspecialchars. Podemos escoger otro nombre para este alias. ejemplo:
<h1><?php eh($model->campo) ?></h1>
- Mirar donde podemos usar mas Try y Catch de exceptions, y poder quitar validaciones.
- Router:
- Quitar el redirect del controller y pasarlo al router, tambien que pueda pasar el 301, 302,... si no usa tiempo.
- Optimizarlo
- Cambiar routes.ini para evitar el bug que tiene php 5.3
- poder pasar parametros usando el routes.ini
- Recordar:
- Crear plantilla para partials, helpers, ... (Autor, categoria, descripcion,...)
- Crear boceto para sistema de plugins(mini apps)
- Considerar HomeController como controller por defecto (mostraria la bienvenida tb) sin usar routes.ini
- Considerar admin o backend modulo por defecto con auth
Terminar la nueva bienvenidaCuando se lanzan las excepciones en ocasiones no se cargan los estilosTerminar que el kumbia exception se encargue de mostrar views para la salida de errores (diferentes en desarrollo y en producción )Crear session en dispatcher solo si el controller es persistenteMover la carga del tags.php y use_helper('main') al get_view()Si no usa ni template ni view, validarlo antes de llamar al get_view()</s<- Cambiar en los callbacks de ActiveRecord el return 'cancel' por un bool es mejor hacer return false
Mover el application controller del dir controllers al dir de la appMover el model base tambien al dir de la appEl application debe extender del controller base de kumbia libs (ahora esta al reves)Cambiar enviroment.ini por databases.ini(lo suyo seria que tuviese el db_date del config.ini y si es posible añadir uno para el charset de la db)- Cambiar los if(file_exists por if(!include $file) { throw new KumbiaException..... (o mejor con un try, si es posible)
Crear un dir temp (para poner dentro el de cache y el de logs)Cambiar, si es posible el mode de config.ini para que sea production = on | offQuitar del config.ini la configuracion de directoriosNecesitamos un metodo para la carga selectiva de modulos (como la de modelos)Quitar el extends object en las clases que no lo necesitan (posiblemente no la necesita ninguna)Quitar el join_path y donde se useSolucionar el problema de los headersIntegrar la nueva cacheEliminar toda la vieja cache en la clase kumbia y controllerAñadir cache a los partialsHacer la clase logger estática- Añadir mas información a los log (estilo apache)
- Habilitar archivos log vía rss
- Habilitar una opción vía config.ini para enviar un mail con los log, contendría el mail del admin.
- Cuando la APP este en producción las excepciones deben ir a un log o rss(si esta habilitado). Y enviar un error 500
Añadir locale al config.iniMejorar la carga de clases del boot.iniMover la carga del standard form al boot.ini- Utilizar el filter_var de PHP en la clase filter. Y en el sanitize y validate de models
Terminar y limpiar el pages controllerUsar el pages controller para visualizar la bienvenida y ponerlo en el routes.ini- La clase xml debe cargarse cuando se necesita y después hacer un exit()
Añadir variable $view al controller para evitar bug y limpiar codigo del render del controller- Rehacer el Router::route_to
Arreglo de los validadores de ActiveRecord.Quitar de los validadores de ActiveRecord el llamado a $this->_connet() eso se ha de pasar al save() tomar como referencia al método validates_presence_ofHabilitar en el config.ini la carga de modelos (databases), esto para cuando se desee trabajar con o sin modelosAgregar al paginate de ActiveRecord el atributo count- El objeto devuelto por Active Record debe ser:
- Objeto ActiveRecord {
- array Metadata (con la metadata)
- array Items (con objetos stdObject)
- }
- Y si es posible, mejor sólo un array sin nombre con los items.
- El active record debe crear el objecto de un golpe ( $items[] = (obj) $array_row )
- El controller debe hacer el sanitize del get, post y request y no el active record
Las variables que inicializa al principio Kumbia::main() deberia crear constantes
Sera más fácil de leer el código y podremos quitar código que sólo pasa esas variables, asi como las variables de objeto, usando menos memoria. Serian para los directorios: MODELS, CONTROLLERS, LIBS, VIEWS, HELPERS Y si es un módulo, ya se creara aqui el directorio correctamente (posible problema con el
route_to, hay que mirarlo)