0

我目前正在使用 Symfony 4 中 2.3 版本的 easy-admin 包。

我尝试为新视图创建一个虚拟属性。我有以下配置

#config/packages/easy_admin.yaml
easy_admin:
    entities:
        Field:
            class: App\Entity\Field
            form: 
                fields: 
                    - { type: tab, label: initial information, icon: pencil-alt }
                    - name
            new:
                fields:
                    - { property: toto, type: file }

和我的实体文件:

//src/Entity/Field.php

/**
 * @ORM\Entity(repositoryClass="App\Repository\FieldRepository")
 */
class Field
{
    public function setToto(?File $file): self
    {
        $this->setImage(new Image);
        $this->getImage()->setImageFile($file);
    }

文档中所述,setter应该足够了。

但是当我到达该new页面时,出现以下错误:

属性“toto”和方法之一“getToto()”、“toto()”、“isToto()”、“hasToto()”、“__get()”都不存在并且在类“App\”中具有公共访问权限实体\字段”。

这意味着该页面正在寻找getter而不是setter. 这是正常的还是我做错了什么?

4

1 回答 1

1

我刚刚遇到了这个问题,我通过添加getter解决了这个问题。正如你所说,它正在寻找getter和setter

于 2019-11-05T11:41:22.047 回答