2010-05-20 20 views
11

Estoy usando Kohana 3 para crear un sitio web que tiene dos aplicaciones, una aplicación de administrador y la interfaz del sitio real. Me he separado de mis carpetas para tener las dos aplicaciones separadas, por lo que la jerarquía se ve de la siguiente manera:Kohana PHP - Múltiples aplicaciones con modelo compartido

/applications 
    /admin 
     /classes 
     /controller 
     /... 
    /site 
     /classes 
     /controller 
     /.... 

Mi pregunta es, ¿cómo tengo que ir sobre la creación de una carpeta compartida/modelo. Básicamente, tanto el administrador como el sitio operan con los mismos datos, por lo que la capa de la base de datos y la lógica de negocios permanecen más o menos iguales. Entonces, para mí, tiene sentido tener una sola carpeta modelo, que se encuentre fuera de las dos carpetas de la aplicación. Es posible lograr la siguiente jerarquía:

/applications 
    /model --> Where model sits in a neatly generic location, accessible to all applications 
    /admin 
     /classes 
     /controller 
     /... 
    /site 
     /classes 
     /controller 
     /.... 

¡Gracias de antemano!

Respuesta

5

Puede agrupar todos sus modelos compartidos en un módulo. Básicamente, las aplicaciones y los directorios del sistema son solo módulos especiales.

+0

esto podría funcionar, I' Intentaremos crear una carpeta llamada modelo dentro de los módulos. Parece la solución más factible. –

0

No sé si es lo que Kohana normalmente hace, ya que solo tengo conocimiento superficial de la jerarquía de carpetas de Kohana, pero podrías hacer esto simplemente con algunos enlaces simbólicos en el sistema de archivos, suponiendo que estás en unix/linux architechture.

http://en.wikipedia.org/wiki/Symbolic_link

2

Se podría cambiar la jerarquía si bien mantienen la administración y sección pública separada de este modo:

 
/application 
     /classes 
      /controller 
       /admin 
       /site 
      /model 
       /admin 
       /site 
       model.php 
     helper.php 

De esta manera, tanto admin admin y el sitio se pueden utilizar ayudantes y modelos comunes

Cuestiones relacionadas