create - load view codeigniter
IntegraciĆ³n inteligente en el marco de Code Igniter (6)
Una pequeña información de fondo :
Estuve mirando algunos framework PHP recientemente, y se redujo a dos. El Zend Framework o CodeIgniter.
Prefiero CodeIgniter, debido a su diseño simple. Es hueso desnudo, y simplemente se mantiene simple. Sin embargo, lo que no me gusta es el sistema de plantillas débiles. El sistema de plantillas es importante para mí, porque trabajaré con otro diseñador. Ser capaz de darle un buen sistema de plantilla es una gran ventaja.
Zend fue la segunda opción, debido al mejor sistema de plantilla que está integrado. Zend es una bestia diferente en comparación con CodeIgniter. Se enfatiza el "acoplamiento flexible entre módulos", pero es un marco más grande. No me gusta sentir que tengo muchas cosas bajo el capó que nunca uso. Eso es una sobrecarga innecesaria en mi opinión, así que pensé en poner un sistema de plantillas en CodeIgniter: Smarty.
Pregunta (s) : ¿Qué tan fácil / difícil es el proceso para integrar Smarty en CodeIgniter? Desde mi escaneo inicial de la documentación de CodeIgniter, puedo ver que el diseño del marco es lo suficientemente fácil de entender, y no anticipo problemas. Quiero saber si alguien lo ha usado antes y, por lo tanto, estoy al tanto de cualquier "error" que haya experimentado que lo haga más difícil de lo que debería o imposible. También quiero saber si esto es algo bueno que hacer. ¿El sistema de plantillas en CodeIgniter es suficiente para un uso normal? ¿Hay algún otro módulo de plantilla que sea bueno para CodeIgniter aparte de Smarty? ¿Me va mejor con Zend Framework? ¿Se está inventando alguna rueda aquí? ¡Gracias por tu ayuda!
Hice una búsqueda rápida en Google y encontré lo siguiente: http://devcha.blogspot.com/2007/12/smarty-as-template-engine-in-code.html http://codeigniter.com/forums/viewthread/ 67127 /
Si el diseñador no está familiarizado con Smarty, creo que es casi lo mismo que si usara el sistema de plantillas CodeIgniter existente (que realmente deja todo en PHP). También depende de la complejidad del proyecto en cuestión.
También puede conectar Smarty con Zend Framework. Es más complejo que con CodeIgniter, pero ya hay un manual sobre cómo hacer exactamente eso en la documentación de ZF. http://framework.zend.com/manual/en/zend.view.scripts.html Además de muchos tutoriales en la red.
En mi opinión, es casi lo mismo, puedes usar PHP puro o Smarty como tu plantilla de "motor", por lo que depende del proyecto. Además, compare un desarrollador que tenga una amplia experiencia y que ya tenga una biblioteca de ayudantes de visualización para que use PHP puro, en comparación con un diseñador que no sepa nada de PHP, pero que tenga una amplia experiencia con Smarty. A veces, las decisiones deben basarse en quién hará qué.
Ligeramente OT, espero que no te importe ...
Soy un usuario de Zend Framework y creo que vale la pena decir que el acoplamiento flexible significa que no necesita incluir ningún archivo que no esté utilizando activamente. Afortunadamente, esto niega su preocupación por gastos indirectos innecesarios.
Con los diseños añadidos en un lanzamiento reciente de ZF, su creación de plantillas es realmente difícil de fallar ... y es completamente conectable como menciona Favio. Cuanto más uso ZF, más me gusta; ¡hacen las cosas como yo las haría!
Perdón por resucitar una pregunta anterior, pero ninguna de las respuestas se ha marcado como "aceptada" todavía.
Hay una biblioteca llamada "plantilla" que hace un gran trabajo al permitirle usar casi cualquier analizador de plantillas que desee:
Biblioteca de Template CI - Parsers
La sintaxis es bastante fácil de integrar en su aplicación de CI y el punto de integración inteligente.
Echa un vistazo a esta biblioteca personalizada de plantillas de CodeIgniter . Ya lo he usado en varios proyectos y es fácil de usar. Sé que esta publicación es tarde, pero vale la pena echarle un vistazo.
No parece que haya habido una respuesta seleccionada para esta pregunta ni se ha proporcionado una solución actualizada para trabajar con la última versión de Codeigniter (2.0) y la última versión de Smarty (3.0.5).
Esta biblioteca le permite usar Smarty 3 con Codeigniter 2.0 para que pueda usar funciones específicas de Smarty 3, como la herencia de plantillas.
http://ilikekillnerds.com/2010/11/using-smarty-3-in-codeigniter-2-a-really-tiny-ci-library/
¿Integrando Smarty en CodeIgniter? Es una brisa! El sistema de plantillas en CodeIgniter es muy básico.
Siga estos pasos para Smarty 3 en CI 3:
Descargar CodeIgniter 3
Descargue Smarty 3 y coloque su contenido en la carpeta ''application / third_party / smarty''
Crea el archivo ''Custom_smarty.php'' en ''application / libraries'' y agrega este código:
<?php
if ( ! defined(''BASEPATH'')) exit(''No direct script access allowed'');
require_once(APPPATH.''third_party/smarty/Smarty.class.php'');
class Custom_smarty extends Smarty {
function __construct()
{
parent::__construct();
$this->setTemplateDir(APPPATH.''views/templates/'');
$this->setCompileDir(APPPATH.''views/templates_c/'');
}
}
?>
Crear carpetas ''templates'' y ''templates_c'' dentro de la carpeta ''application / views''
Cree un archivo simple ''test.tpl'' en la carpeta ''application / views / templates''
Abra ''autoload.php'' en la carpeta ''application / config'' y agregue:
$autoload[''libraries''] = array(''custom_smarty'');
Y dentro de un controlador: $this->custom_smarty->display(''test.tpl'');
Si está trabajando en localhost configure los permisos: sudo chmod -R 777 templates_c
. Otra cosa ponerse en contacto con su servicio de alojamiento, si detecta el error No se puede escribir el archivo. Primero asegúrese de que la carpeta templates_c exista.
De lo contrario, puede usar otro motor de plantillas como Twig.