Hola, estoy desarrollando una aplicación con Silex-Skeleton en su versión más reciente y al intentar crear funciones compartidas o utilizar el método share()
marca el siguiente error:
Attempted to call method "share" on class "Silex\Application".
Código:
$app['login'] = $app->share(function($app) { return new Model\UserModel($app); });
Respuestas
Seguramente lo sabrás, pero te comento que Silex 2 está todavía en desarrollo, por lo que no es muy recomendable usarlo hasta que sea estable.
Uno de los principales cambios que han hecho al nuevo Silex es que ahora todos los servicios son shared
por defecto. Esto tiene sentido porque al final, todos utilizábamos servicios compartidos para la mayoría de servicios de nuestras aplicaciones.
Así que en el nuevo Silex, debes cambiar tu código por lo siguiente:
$app['login'] = function($app) { return new Model\UserModel($app); };
@javiereguiluz
27 enero 2015, 8:42