当前位置:  开发笔记 > 编程语言 > 正文

无法解析类的列\"id \"的类型

如何解决《无法解析类的列\"id\"的类型》经验,为你挑选了1个好方法。

我在Doctrine和Symfony2中遇到这个错误:

无法解析类"ST\UserBundle\Entity\User"的列"id"的类型

统计

class Statistique
{
    // ...

    // @ORM\ManyToOne(targetEntity="ST\UserBundle\Entity\User")
    // @ORM\JoinColumn(name="idPro", referencedColumnName="id")
    private $user;
}

编辑#1:

用户

use FOS\UserBundle\Model\User as BaseUser;

// @ORM\Table(name="tiers_prov3")
class User extends BaseUser
{
    /**
     * @ORM\Column(name="TIE_ID", type="integer")
     * @ORM\Id
     * @ORM\GeneratedValue(strategy="NONE")
     */
    protected $id;

    // ...
}

我无法弄清楚.



1> scandel..:

User类中$ id属性的列名是"TIE_ID".因此,请尝试在Statistic类中使用此名称而不是id:

/**
 * @var string
 *
 * @ORM\ManyToOne(targetEntity="ST\UserBundle\Entity\User")
 * @ORM\JoinColumn(name="idPro", referencedColumnName="TIE_ID") <== here
 */
private $user;

在Doctrine注释中,列名称(如in @ORM\Column(name="x"...)@ORM\JoinColumn(name="y", referencedColumnName="x" ...)- 是真正的数据库列名称).

推荐阅读
mobiledu2402852357
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有