1

我需要在 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>
4

2 回答 2

2

EasyAdmin 依赖于 Symfony 的 Form 组件来处理与编辑/新视图相关的任何事情。这意味着列表/显示/搜索中用于自定义每个属性的呈现的简单机制不可用。

https://symfony.com/doc/master/bundles/EasyAdminBundle/book/edit-new-configuration.html#advanced-design-configuration中所述,替代方法是覆盖默认模板或创建自己的表单主题。

希望当这个提案被批准和合并后,Symfony 会尽快让这件事变得更简单:https ://github.com/symfony/symfony/issues/29651

于 2018-12-26T15:17:02.210 回答
0

像这样:

# 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

于 2018-12-26T14:56:47.370 回答