Вот тип формы, который у меня есть: // src / Form / Type / TaskType. php
namespace App\Form\Type;
use Symfony\Component\Form\AbstractType;
use Symfony\Component\Form\Extension\Core\Type\DateType;
use Symfony\Component\Form\Extension\Core\Type\SubmitType;
use Symfony\Component\Form\Extension\Core\Type\TextType;
use Symfony\Component\Form\FormBuilderInterface;
use Symfony\Component\OptionsResolver\OptionsResolver;
use Symfony\Component\Form\Extension\Core\Type\CollectionType;
use Symfony\Component\Form\Extension\Core\Type\EmailType;
use App\Entity\Task;
class TaskType extends AbstractType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder
->add('task', TextType::class, array(
'attr' => ['class' => 'myclass'],
)
)
->add(
'dueDate', DateType::class, array(
'attr' => ['class' => 'myclass'],
)
)
->add('save', SubmitType::class)
;
}
public function configureOptions(OptionsResolver $resolver)
{
$resolver->setDefaults([
'data_class' => Task::class,
]);
}
}
Вот представление:
{# templates/task/new.html.twig #}
<div class="form-control">
{{ form_label(form.task) }}
{{ form_widget(form.task) }}
<small>{{ form_help(form.task) }}</small>
<div class="form-error">
{{ form_errors(form.task) }}
</div>
<i class="fa fa-calendar"></i> {{ form_label(form.dueDate) }}
{{ form_widget(form.dueDate) }}
<small>{{ form_help(form.dueDate) }}</small>
<div class="form-error">
{{ form_errors(form.dueDate) }}
</div>
</div>
Класс «myclass» добавляется в div, содержащий все поля выбора, и я хочу, чтобы он применялся к каждому выбору. Если невозможно настроить это в типе формы, должен быть способ разбить оператор «form_widget (form.dueDate)» в представлении, чтобы я мог передать класс каждому выбору, и я не могу найти его в документация.
Спасибо