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
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.