10

尝试创建外键映射(即,将类别映射到产品)时,我在“创建产品”页面中收到以下错误:

在传递给选择字段的“CJ\BusinessBundle\Entity\Category”类型的对象上找不到“__toString()”方法。要改为读取自定义 getter,请将选项“property”设置为所需的属性路径。

4

2 回答 2

29

您需要向__toString()Category 实体添加一个方法。例如:

public function __toString()
{
    return $this->name;
}

PHP 魔术方法__toString()用于呈现对象的文本表示。在这种情况下,在相关实体的表单中选择类别时将使用类别名称。

于 2013-03-19T10:50:59.967 回答
6

错误消息告诉您需要做什么。在您的 Category 实体中,您需要添加一个 __toString() 方法,以便当您添加产品时,它知道在表单上的选择框中为每个项目命名。

public function __toString()
{
    return $this->name;
}

在上面替换“名称”为您的类别的可读标识符的任何字段。

于 2013-03-19T10:52:54.897 回答