条令2.2.2注释数据库表关系



我对条令2很陌生,对数据库表关系不太了解。我理解多对一、一对多、一对一和多对多关系的运作方式。我只是对下面使用条令CLI生成数据库表时出现的错误感到困惑。

  [DoctrineORMORMException]
  Column name `id` referenced for relation from KentEntityDoctorSpecialties towards KentEntityDoctors does not exist.

请查看此github链接以查看我的实体。(Doctors.php和DoctorSpecialties.php)

https://github.com/aldee07/Doctor-Finder/tree/development-september/library/Kent/Entity

注意:我使用的是Zend Framework 1.11.12

这些是必须放在DoctorSpecialties类上的注释

@ManyToOne(targetEntity="Doctors")
@JoinColumn(name="doctor_id", referencedColumnName="doctor_id")

在多对多关系中,您必须引用第三个forignkey表

所以更改这个

/**
 *
 * @var Doctors
 * @ManyToMany(targetEntity="Doctors", mappedBy="specialties")
 * @JoinTable(name="doctor_specialties")
 */
protected $doctors

希望这对有帮助

我认为你最好看看这里:http://www.doctrine-project.org/jira/browse/DDC-2646?page=com.atlassian.jira.plugin.system.issuetabpanels:changehistory-选项卡

相关内容

  • 没有找到相关文章

最新更新