Задать вопрос
@Marellz

Допустимо ли использовать в Controller-е куски View-а?

Добрый день!

При изучении Симфони возник такой вопрос: допустимо ли в контроллере оперировать отображением?

Например, в Symfony Forms при создании формы в ней прописывается не только логика, но и её отображение:
$form = $this->createFormBuilder($task)
        ->add('task', TextType::class)
        ->add('dueDate', DateType::class)
        ->add('save', SubmitType::class, ['label' => 'Create Task']) // - лейбл - это уже часть шаблона, верно?
        ->getForm();


Более того, сама форма позволяет в коде переопределить html-аттрибуты, которые по логике в контроллере не должны появляться, только в view-е (код прямо из документации):
$builder->add('body', TextareaType::class, [
    'attr' => ['class' => 'tinymce'],
]);


Насколько это допустимо с точки зрения чистоты кода? Можно ли (и нужно ли) это как-то обходить?
Например, в контроллере задавая только логику обработки и структуру данных (модель), а уже в шаблоне передавать параметры для отображения, что-то вроде
<?php $form->render( [
     'field' => [
        'class' => 'tinymce', 
        'label' => 'Лейбл для поля',
        ...
    ], ...
] ); ?>
  • Вопрос задан
  • 80 просмотров
Подписаться 1 Простой 3 комментария
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы