Делаю админку на easyadmin 4 и symfony 6. Реализовал загрузку изображений для товара, но не могу на форме редактирования применить свой шаблон что-бы отображались изображения и рядом с ними кнопка удаления изображения. Сейчас вывод изображений выглядит аккордеоном от CollectionType:
По коду следующее:
ProductCrudController:
public function configureFields(string $pageName): iterable
{
return [
//...
FormField::addTab('Изображения'),
ImagesListField::new('images')
->hideOnIndex(),
UploadImageField::new('imageFiles', 'Загрузка изображений')
->onlyOnForms(),
//...
];
}
ImageListField:
class ImagesListField implements FieldInterface
{
use FieldTrait;
public static function new(string $propertyName, ?string $label = null)
{
return (new self())
->setProperty($propertyName)
->setLabel($label)
->setFormType(CollectionType::class)
->setTemplatePath('admin/field/image-list.html.twig')
->addCssClass('field-collection')
->addJsFiles(Asset::new('bundles/easyadmin/field-collection.js')->onlyOnForms())
->setFormTypeOptions([
'label' => false,
'prototype' => false,
'allow_delete' => true,
'allow_add' => false,
'delete_empty' => false,
])
;
}
}
Шаблон для страницы просмотра (DETAIL)
admin/field/image-list.html.twig:
{% block main %}
<div class="row">
{% for image in field.value %}
<a href="{{ image.path }}" data-toggle="lightbox" data-gallery="image-gallery" class="col">
<img src="{{ image.path }}" alt="{{ image.name }}" width="150" height="150" class="img-fluid">
</a>
{% endfor %}
</div>
{% endblock main %}
Как мне установить свой шаблон для коллекции изображений?