Symfony Создание класса контроллера в silex

keltanas

marty cats
1. Какая у тебя версия php?
2. Было бы хорошо, если бы ты залил свое барахло на github и дал сюда ссылку. Чтобы посмотреть на твой проект в общем. А то по кускам не понятно, что у тебя как?

Или еще финт ушами. В app.php добавь строку
PHP:
require_once 'src/Controllers/HomeController.php';
Это должно исключить проблемы с автозагрузчиком, по крайней мере.
 

AmdY

Пью пиво
Команда форума
Новичок Silex
какая у тебя ошибка, н найден класс или просто роут не срабатывает, обрати внимание на мой коммент про слеш.
 

keltanas

marty cats
Новичок Silex
И попробуй таки возвращать
PHP:
namespace Controllers;
 
use Silex\Application;
use Symfony\Component\HttpFoundation\Request;
use Symfony\Component\HttpFoundation\Response;

class HomeController
{
	public function index(Request $request, Application $app) 
	{
		return new Response('All right');
	}	
}
из метода контроллера, а не die() делать.
 

Новичок Silex

Новичок
Спасибо ребята что выдвигали идеи для решения моей проблемы.
После подсказок Вурдалака ошибка
"InvalidArgumentException: Class "Controllers\HomeController" does not exist." изменилась на "InvalidArgumentException: Class "Controllers\Request" does not exist."
я стал дебажить пошагово и выяснилось что проблема была в не правильном объявлении namespace

Изначально я за пример взял класс из официальной документации


PHP:
use Silex\Application;
use Symfony\Component\HttpFoundation\Request;

namespace Igorw
{
    class Foo
    {
        public function bar(Request $request, Application $app)
        {
            ...
        }
    }
}
но после того как я переделал структура и namespace объявил самым первым, все стало на свои места.

PHP:
namespace Igorw;
use Silex\Application;
use Symfony\Component\HttpFoundation\Request;



    class Foo
    {
        public function bar(Request $request, Application $app)
        {
            ...
        }

}
Так что я еще по упражняюсь с контроллерами и буду двигаться дальше :)

Еще раз всем спасибо за помощь!!!
 
Сверху