找不到字段的映射

Posted

技术标签:

【中文标题】找不到字段的映射【英文标题】:No mapping found for field 【发布时间】:2013-01-08 19:25:26 【问题描述】:

我必须实体

class Patients 

    
         /**
         * @ORM\OneToOne(targetEntity="ContactAddress", mappedBy="patients")
         */
        protected $contactaddress;
    

还有一个

class ContactAddress

    /**
     * @ORM\OneToOne(targetEntity="Patients", inversedBy="contactaddress")
     * @ORM\JoinColumn(name="patient_id", referencedColumnName="id")
     */
     protected $patient;

当我尝试执行这段代码时

$em = $this->getDoctrine()->getEntityManager();
$product = $em->getRepository('SurgeryPatientBundle:Patients')->find($id);

我明白了

No mapping found for field 'patients' on class 'Surgery\PatientBundle\Entity\ContactAddress'. 

当我尝试访问联系人存储库时,我得到了结果

请帮忙 ;D 对不起我的英语

【问题讨论】:

【参考方案1】:

您必须在 ContactAddress 实体中引用 patient 而不是患者*s*。

class Patients 

     /**
     * @ORM\OneToOne(targetEntity="ContactAddress", mappedBy="patient")
     */
    protected $contactaddress;

【讨论】:

以上是关于找不到字段的映射的主要内容,如果未能解决你的问题,请参考以下文章

由于找不到网络 未能映射驱动器

找不到映射文件mapper.xml解决方法

RestKit - 找不到 keyPath 的对象映射:''

内存映射阅读器找不到全局内存映射对象

Symfony2 找不到映射文件

找不到映射模型(Cocoa 错误 134140)