Ещё один вопрос по нейспейсам, ничего в голову не приходит.
Допустим я пишу свой бандл. Соответственно у меня есть директории с моделями и контроллерами
, всё грузится по PSR согласно этому дереву.
Контроллер называется Bundle\News\C\Front, модель Bundle\News\M\News в коде это выглядит так
PHP:
namespace Bundle\News\C; // в нейспейс приходится включать часть "С", вместо Bundle\News
use Kiss\Routing\Controller;
use Bundle\News\M; // лишний раз пишу use
class Front extends Controller // здесь хотелось бы объявить класс C\Front
{
public function fooAction()
{
$model = new M\News();
$model->find($this->getRoute()->get('id'));
return $this->getResponseView('foo.html', ['model' => $model]);
}
}
Хотелось бы нейспейс обявлять уровнем выше, а уже в названии класса-контроллера включать неймспейс контроллера, это бы позволило юзать модели и т.д. без use или полного пути
PHP:
namespace Bundle\News; // чистый неймспейс для всего бандла
use Kiss\Routing\Controller;
class C\Front extends Controller // неймспейс и класс контроллера
{
public function fooAction()
{
$model = new M\News(); // вызов модели из неймспейса бандла.
$model->find($this->getRoute()->get('id'));
return $this->getResponseView('foo.html', ['model' => $model]);
}
}
Или я плохо знаю неймспейсы и так можно делать или такого функционала нет?