Hola.
Veamos si me puedo explicar. Tengo un proyecto con symfony 2.6.1 y otro con la versión 2.5.7. En la versión 2.5.7 al momento de instanciar una classe, podía usar el objeto “container” dentro de esta nueva instancia, sin necesidad de pasar el “container” sin ningún problema. Pero en la versión 2.6.1 esto ya no es posible. Me pregunto; Esto es el funcionamiento correcto? . Tendré que pasar el “container” a usar al momento de usar algún procedimiento de la clase instanciada? .
Pongo un ejemplo:
Controllador principal
Código PHP:
class MiCuentaController extends Controller
{
public function IndexAction(Request $request)
{
$Registro=new RegistroController(); // Objeto RegistroController intanciado
$Var=$Registro->IndexAction(); //Metodo a usar
if($Var['Reg_a']){
// hacer algo
}
return $this->rende....
}
}
Objeto RegistroController
Código PHP:
class RegistroController extends Controller
{
public function IndexAction()
{
$this->get('session')->getFlashBag()->add('info', '¡Bien!');// En la versión2.5.7 no me genera ningun problema. En la versión 2.6.1 me genera el siguiente error:
//Error: Call to a member function get() on a non-object
// Lo mismo ocurre al usar "$this->getDoctrine()" o "$this->getUser()"
/// ...... resto de codigo
return $Var;
}
Tendre que pasar el "container" al momento de usar los procedimientos de la siguiente manera?: $Registro->IndexAction($em,$Usr,$session);
Espero puedan ayudarme. Saludos