我在Entity1
文件中添加了几个字段,如:
/**
* @var integer $typeid
*
* @ORM\Column(name="typeid", type="integer")
*/
private $typeid;
并添加了getter和setter方法。
在我的控制器中,我使用以下方式获取数据:
$result = $entityManager->getRepository('MyBundle:Entity1')
->findby(array('year' => $year));
我将结果发送到名为'entities'
的数组中的twig文件(例如)
在我的twig文件中,我遍历数组中的所有实体并显示
数据
我有两个例外:
1/2
ErrorException: Notice: serialize(): "id" returned as member variable from __sleep() but does not exist in /var/www/Symfony/vendor/symfony/src/Symfony/Component/HttpKernel/DataCollector/DataCollector.php line 29
2/2
Exception: Symfony\Bundle\FrameworkBundle\DataCollector\RequestDataCollector::serialize() must return a string or NULL
我是Symfony 2的新手,我不确定是什么时候发生的。我猜是新的领域 我在Entity文件中添加了一些问题。
答案 0 :(得分:1)
将此代码添加到我的产品实体时出现同样的错误:
/**
* @var Type $type
*
* @ORM\ManyToOne(targetEntity="Acme\StoreBundle\Entity\Product\Type")
* @ORM\JoinColumn(name="type_id", referencedColumnName="id")
*/
private $type;
这是我的模板:
{% render "StoreBundle:Product:list" with { 'products': products } %}
但如果我改变模板:
{% for product in products %}
<li>{{ product.name }}</li>
{% endfor %}
...或将水合模式更改为数组:
$products = $this->getDoctrine()
->getRepository('StoreBundle:Product')
->getQuery()
->getResult(\Doctrine\ORM\Query::HYDRATE_ARRAY);
...错误不会发生