【发布时间】:2023-03-11 18:53:01
【问题描述】:
当我尝试创建外键映射(即将类别映射到产品)时,我在“创建产品”页面中收到以下错误:
在类型的对象上找不到“__toString()”方法 “CJ\BusinessBundle\Entity\Category”传递给选择字段。到 改为阅读自定义吸气剂,将选项“属性”设置为所需 属性路径。
【问题讨论】:
-
请参阅this issue。我认为它可能对你有用。
当我尝试创建外键映射(即将类别映射到产品)时,我在“创建产品”页面中收到以下错误:
在类型的对象上找不到“__toString()”方法 “CJ\BusinessBundle\Entity\Category”传递给选择字段。到 改为阅读自定义吸气剂,将选项“属性”设置为所需 属性路径。
【问题讨论】:
您需要将__toString() 方法添加到您的类别实体。例如:
public function __toString()
{
return $this->name;
}
PHP 魔术方法__toString() 用于呈现对象的文本表示。在这种情况下,在相关实体的表单中选择类别时将使用类别名称。
【讨论】:
错误消息告诉您需要做什么。在您的 Category 实体中,您需要添加一个 __toString() 方法,以便当您添加产品时,它知道在表单的选择框中为每个项目命名。
public function __toString()
{
return $this->name;
}
将上面的“名称”替换为您的类别的可读标识符。
【讨论】: