Foros del Web » Programando para Internet » PHP » Frameworks y PHP orientado a objetos »

multple sitios con laravel

Estas en el tema de multple sitios con laravel en el foro de Frameworks y PHP orientado a objetos en Foros del Web. Hola a tod@s, actualmente tengo un sitio hecho con mi propio framework que permite tener un solo core instalado y multiple sites con una sola ...
  #1 (permalink)  
Antiguo 17/07/2013, 19:54
Avatar de destor77  
Fecha de Ingreso: noviembre-2004
Ubicación: Gálvez, Santa Fe, Argentina
Mensajes: 2.654
Antigüedad: 19 años, 5 meses
Puntos: 43
multple sitios con laravel

Hola a tod@s,
actualmente tengo un sitio hecho con mi propio framework que permite tener un solo core instalado y multiple sites con una sola administración en un mismo dominio (el sitio es de un festival de cine entonces hay que dejar accesible la web de la edición del año anterior), la estructura actual es:
Cita:
festival
------ admin
------------ controladores
------------ templates
------ core
------ helpers
------ images
------ lenguajes
------ modelos
------ festival_edicion2009
------------------------ images
------------------------ website
------------------------------------------ controladores
------------------------------------------ templates
------ festival_edicion2010
------------------------ images
------------------------ website
------------------------------------------ controladores
------------------------------------------ templates
------ festival_edicion2011
------------------------ images
------------------------ website
------------------------------------------ controladores
------------------------------------------ templates
------ festival_edicion2012
------------------------ images
------------------------ website
------------------------------------------ controladores
------------------------------------------ templates
------ website (este seria el sitio actual)
------------ controladores
------------ templates
------ index.php
------ router.php
Con esta estructura no necesito andar instalando todo el framework de nuevo para cada nueva edición del festival, ya que con solo crear los controladores y las vistas para la nueva versión.

Mi duda es si con laravel 4 voy a poder tener algo parecido, estuve googleando y todos hablan de usar modulos, pero lo que yo necesito es tener varias aplicaciones con una sola instalación del framework.
Cualquier comentario y/o sugerencia sera bienvenida.
Salu2
  #2 (permalink)  
Antiguo 18/07/2013, 01:42
 
Fecha de Ingreso: junio-2013
Ubicación: Madrid
Mensajes: 73
Antigüedad: 10 años, 10 meses
Puntos: 27
Respuesta: multple sitios con laravel

Se puede hacer perfectamente y efectivamente los módulos son la solución.

Los módulos de terceros, que instalas con composer, van a /vendor, pero Laravel además nos permite tener módulos propios, que no tienen porqué compartirse con otros proyectos, pero que nos permiten dividir nuestra aplicación.

Lo apropiado sería que tuvieras un módulo para cada festival y otro para el admin. El comando sería algo así:

Código:
$ php artisan workbench festival/admin --resources
$ php artisan workbench festival/edicion2011 --resources
$ php artisan workbench festival/edicion2012 --resources
...
en la nueva carpeta /workbench tendrás todos los módulos. Es posible tener en cada uno su propio routes.php y sus propias carpetas views, controllers, config, ...

Además, desde esos módulos puedes usar modelos y plantillas del framework principal. O sea que puedes hacer algo como:

Código PHP:
View::make('edicion2012::home'); 
Que cargaría /app/workbench/festival/edicion2012/src/views/home.blade.php

Y en esa plantilla del módulo puedes tener algo como

Código PHP:

@include('partials.footer'
Que cargaría /app/views/partials/footer.blade.php.

Precisamente estoy con una web que organiza congresos, y cada congreso tiene su propia "estructura" pero comparten ciertas plantillas y modelos.

Como decía, en cada módulo puedes tener un routes.php, que podría tener este aspecto:

Código PHP:
<?php

Route
::group(array("prefix" => "festival-2012"), function()
{
    
Route::get(
        
"/",
        array(
            
'as' => 'f2012.home',
            function() { return 
View::make("festival2012::home"); },
        )
    );
Y luego en la vista puedes tener:
Código PHP:
{{ link_to_route("f2012.home""Ir al inicio del Festival 2012") }} 
Así que es fácil cambiar rutas sin tener que reescribir todo.

De aquí puedes sacar más información. No todo lo que pone tendrías que aplicarlo, pero es un buen comienzo:

http://jasonlewis.me/article/laravel-4-develop-packages-using-the-workbench
  #3 (permalink)  
Antiguo 18/07/2013, 01:47
 
Fecha de Ingreso: junio-2013
Ubicación: Madrid
Mensajes: 73
Antigüedad: 10 años, 10 meses
Puntos: 27
Respuesta: multple sitios con laravel

Y añadir que dado que los módulos están fuera de la carpeta public, para poder acceder a cada css, image, ... de cada módulo tendrás que ejecutar algo como:

Código:
php artisan asset:publish --bench festival/festival2012
Y en las plantillas tener algo así:

Código PHP:
<link rel="stylesheet" type="text/css" href="{{ URL::asset('packages/festival/festival2012/styles.css') }}" /> 
Suerte!
  #4 (permalink)  
Antiguo 18/07/2013, 05:11
Avatar de destor77  
Fecha de Ingreso: noviembre-2004
Ubicación: Gálvez, Santa Fe, Argentina
Mensajes: 2.654
Antigüedad: 19 años, 5 meses
Puntos: 43
Respuesta: multple sitios con laravel

muchisima gracias eternoaprendiz, soy nuevo en laravel y mi idea a migrar mi framework a laravel para poder aprovechar todos sus beneficios (digamos hacer un fork) y no queria perder esa funcionalidad de usar un solo core y tener varios sitios/aplicaciones al mismo tiempo.
  #5 (permalink)  
Antiguo 18/07/2013, 05:12
Avatar de destor77  
Fecha de Ingreso: noviembre-2004
Ubicación: Gálvez, Santa Fe, Argentina
Mensajes: 2.654
Antigüedad: 19 años, 5 meses
Puntos: 43
Respuesta: multple sitios con laravel

ahhh una última consulta, esto es lo mismo para la version 4 o solo para la 3 ?
  #6 (permalink)  
Antiguo 18/07/2013, 05:20
 
Fecha de Ingreso: junio-2013
Ubicación: Madrid
Mensajes: 73
Antigüedad: 10 años, 10 meses
Puntos: 27
Respuesta: multple sitios con laravel

Esto es para la Versión 4.

En la versión 3 también es posible usando bundle, pero no pierdas el tiempo mirando L3.
  #7 (permalink)  
Antiguo 19/07/2013, 10:32
Avatar de Hiruma-Sama  
Fecha de Ingreso: agosto-2007
Ubicación: Floresta, Buenos Aires, Argentina.
Mensajes: 234
Antigüedad: 16 años, 8 meses
Puntos: 5
Respuesta: multple sitios con laravel

El tema me ha servido mucho, también ando empezando con laravel, aunque mi proyecto no está en productivo, la idea es que se pueda hacer multisite y esto me sirve bastante :P
Abrazo!
  #8 (permalink)  
Antiguo 19/07/2013, 11:56
 
Fecha de Ingreso: junio-2013
Ubicación: Madrid
Mensajes: 73
Antigüedad: 10 años, 10 meses
Puntos: 27
Respuesta: multple sitios con laravel

Pues estoy leyendo el libro de Taylor Otwell y vienen cosas muy interesantes sobre esto.

Laravel es tremendamente flexible (más de lo que yo pensaba). A ver si pongo un mini ejemplo sobre este tema.

Etiquetas: controlador, framework
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 12:14.