我目前正在使用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);
}
如documentation中所述,setter
就足够了。
但是当我进入new
页面时,出现以下错误:
属性“ toto”或方法“ getToto()”,“ toto()”,“ isToto()”,“ hasToto()”,“ __ get()”都不存在,并且在类中没有公共访问权限“ App \ Entity \ Field”。
,表示该页面正在寻找getter
,而不是setter
。是正常现象还是我做错了什么?
答案 0 :(得分:1)
我刚刚遇到了这个问题,并通过添加 getter 解决了该问题。 如您所说,它正在寻找 getter ,而且也在寻找 setter 。