1

I'll go straight to the point, I only changed the controller namespace Musique\Controller to STM\Controller

 namespace STM\Controller;

use Silex\Application;

class HomeController{

public function indexAction(Application $app){
    return $app['twig']->render("index.html.twig");
}

also changed my composer.json file

{
"name": "jasonazoulay/SoTrustMe",
"description": "Tiers de confiance",
"authors": [
    {
        "name": "Jason Azoulay",

    }
],
"require": {
    "silex/silex": "^2.0",
    "doctrine/dbal": "~2.5",
    "twig/twig": "^1.33",
    "symfony/asset": "^3.2",
    "symfony/twig-bridge": "^3.2",
    "symfony/form": "~2.8|3.0.*",
    "symfony/translation": "~2.8|3.0.*",
    "symfony/config": "~2.8|3.0.*"
},
"autoload": {
    "psr-4": {"SoTrustMe\\": "src"}
}

} and of course the route also

$app->get('/',"STM\Controller\HomeController::indexAction")->bind('home');

and now i get this error

InvalidArgumentException in ControllerResolver.php line 187: Class "STM\Controller\HomeController" does not exist.

though it was working just fine before I change the namespace !

please help me

Azoulay Jason
  • 2,787
  • 5
  • 21
  • 46

1 Answers1

0

Since you are loading your classes with composer and you introduced a new directory in your project you are going to need to re-run: composer dump-autoload

this will regenerate the list of all classes that need to be included in the project and updates the Composer cache. For more detail regarding this issue you could have a look at this question.

Community
  • 1
  • 1
hatef
  • 5,491
  • 30
  • 43
  • 46
  • 1
    Thank you very much maybe this works, but my issue was this part "autoload": { "psr-4": {"SoTrustMe\\": "src"} } I just had to put the root namespace .. so STM and then run composer update generates new autoloader for this namespace and solved my issue ! – Azoulay Jason Apr 30 '17 at 00:48