Мне нужно настроить поле просмотра формы (редактировать поле формы) в комплекте EasyAdmin. Вот как это делается в виде списка:
- { property: 'images', template: 'custom_template.html.twig'}
Как реализовать то же самое в виде формы (режим редактирования)? Пользовательские шаблоны не работают для вида формы (вид редактирования). Поэтому я сделал тип настраиваемого поля
- { property: 'images', type: 'App\Form\Type\MyImagesType'}
но не знаю, как реализовать собственный шаблон для него.
class MyImagesType extends CollectionType
{
public function buildForm(FormBuilderInterface $builder, array $options)
{
$form->add($key, FileType::class, ['multiple'=>true, 'required'=>false]);
}
}
Я хочу интегрировать dopzone.js в мою форму, вставив скрипт:
<script src="./public/dropzone.js"></script>
<form action="{{ oneup_uploader_endpoint('gallery') }}" class="dropzone" style="width:200px; height:200px; border:4px dashed black">
</form>
как это:
# config/packages/easy_admin.yaml
easy_admin:
entities:
Customer:
class: App\Entity\Customer
form: # <-- 'form' is applied to both 'new' and 'edit' views
fields:
- 'id'
- { property: 'email', type: 'email', label: 'Contact' }
# ...
# ...
проверить документацию, это очень легко
https://symfony.com/doc/master/bundles/EasyAdminBundle/book/edit-new-configuration.html#the-special-form-view
EasyAdmin использует компонент Form Symfony для всего, что связано с редактированием / новыми представлениями. Это означает, что простой механизм, используемый в list / show / search для настройки рендеринга каждого свойства, недоступен.
Как объяснено в https://symfony.com/doc/master/bundles/EasyAdminBundle/book/edit-new-configuration.html#advanced-design-configuration альтернатива — переопределить шаблоны по умолчанию или создать собственную тему формы.
Надеюсь, Symfony сделает это проще, когда это предложение будет одобрено и объединено: https://github.com/symfony/symfony/issues/29651