Symfony - 映射相互不一致 - 关联指的是不存在的反面字段
Symfony - The mappings are inconsistent with each other - The association refers to the inverse side field which does not exist
您好,我尝试建立一个 OntToMany ond ManyToOne 连接,但出现以下错误:
The mappings MySqlBundle\Entity\GENERAL\Categorie#SOCIETES and MySqlBundle\Entity\GENERAL\Societe#CATEGORIE are inconsistent with each other.
The association MySqlBundle\Entity\GENERAL\Societe#CATEGORIE refers to the inverse side field MySqlBundle\Entity\GENERAL\Categorie#Societe which does not exist.
我的类别实体:
/**
* @ORM\Table(name="Categorie")
* @ORM\Entity(repositoryClass="MySqlBundle\Repository\GENERAL\Categories_Repository")
*/
class Categorie
{
public function __construct() {
$this->SOCIETES = new ArrayCollection();
}
/**
* @var integer
*
* @ORM\Column(name="ID", type="integer", nullable=false)
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
public $Id;
/**
* @var text
*
* @ORM\Column(name="DESCRIPTION", type="text", nullable=true)
*/
public $DESCRIPTION;
/**
* @var integer
*
* @ORM\Column(name="ORDRE", type="integer", nullable=false)
*/
public $ORDRE;
/**
* @ORM\OneToMany(targetEntity="Societe", mappedBy="CATEGORIE")
*/
private $SOCIETES;
我的公司实体:
/**
* @ORM\Table(name="Societe")
* @ORM\Entity(repositoryClass="MySqlBundle\Repository\GENERAL\Societe_Repository")
*/
class Societe
{
/**
* @var integer
*
* @ORM\Column(name="ID", type="integer", nullable=false)
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
public $Id;
/**
* @var string
*
* @ORM\Column(name="NOM", type="string", length=255)
*/
public $NOM;
/**
* @var string
*
* @ORM\Column(name="INFO", type="string", length=255, nullable=true)
*/
public $INFO;
/**
* @var string
*
* @ORM\Column(name="HOST", type="string", length=255, nullable=true)
*/
public $HOST;
/**
* @var string
*
* @ORM\Column(name="NOM_USER", type="string", length=255, nullable=true)
*/
public $NOM_USER;
/**
* @var string
*
* @ORM\Column(name="MDP", type="string", length=255, nullable=true)
*/
public $MDP;
/**
* @ORM\ManyToOne(targetEntity="Categorie", inversedBy="Societe")
* @ORM\JoinColumn(name="ID_CATEGORIE", referencedColumnName="ID")
*/
private $CATEGORIE;
如果你有想法,我已经检查了拼写(通过复制和粘贴),即使再次阅读错误也无法纠正。
我没有放 getter 和 setter,但如果你想要它们,没问题。
您必须匹配名称。在这种情况下,你想像这样将 "SOCIETES" 大写:
/**
* @ORM\ManyToOne(targetEntity="Categorie", inversedBy="SOCIETES")
* @ORM\JoinColumn(name="ID_CATEGORIE", referencedColumnName="ID")
*/
private $CATEGORIE;
您好,我尝试建立一个 OntToMany ond ManyToOne 连接,但出现以下错误:
The mappings MySqlBundle\Entity\GENERAL\Categorie#SOCIETES and MySqlBundle\Entity\GENERAL\Societe#CATEGORIE are inconsistent with each other.
The association MySqlBundle\Entity\GENERAL\Societe#CATEGORIE refers to the inverse side field MySqlBundle\Entity\GENERAL\Categorie#Societe which does not exist.
我的类别实体:
/**
* @ORM\Table(name="Categorie")
* @ORM\Entity(repositoryClass="MySqlBundle\Repository\GENERAL\Categories_Repository")
*/
class Categorie
{
public function __construct() {
$this->SOCIETES = new ArrayCollection();
}
/**
* @var integer
*
* @ORM\Column(name="ID", type="integer", nullable=false)
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
public $Id;
/**
* @var text
*
* @ORM\Column(name="DESCRIPTION", type="text", nullable=true)
*/
public $DESCRIPTION;
/**
* @var integer
*
* @ORM\Column(name="ORDRE", type="integer", nullable=false)
*/
public $ORDRE;
/**
* @ORM\OneToMany(targetEntity="Societe", mappedBy="CATEGORIE")
*/
private $SOCIETES;
我的公司实体:
/**
* @ORM\Table(name="Societe")
* @ORM\Entity(repositoryClass="MySqlBundle\Repository\GENERAL\Societe_Repository")
*/
class Societe
{
/**
* @var integer
*
* @ORM\Column(name="ID", type="integer", nullable=false)
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
public $Id;
/**
* @var string
*
* @ORM\Column(name="NOM", type="string", length=255)
*/
public $NOM;
/**
* @var string
*
* @ORM\Column(name="INFO", type="string", length=255, nullable=true)
*/
public $INFO;
/**
* @var string
*
* @ORM\Column(name="HOST", type="string", length=255, nullable=true)
*/
public $HOST;
/**
* @var string
*
* @ORM\Column(name="NOM_USER", type="string", length=255, nullable=true)
*/
public $NOM_USER;
/**
* @var string
*
* @ORM\Column(name="MDP", type="string", length=255, nullable=true)
*/
public $MDP;
/**
* @ORM\ManyToOne(targetEntity="Categorie", inversedBy="Societe")
* @ORM\JoinColumn(name="ID_CATEGORIE", referencedColumnName="ID")
*/
private $CATEGORIE;
如果你有想法,我已经检查了拼写(通过复制和粘贴),即使再次阅读错误也无法纠正。
我没有放 getter 和 setter,但如果你想要它们,没问题。
您必须匹配名称。在这种情况下,你想像这样将 "SOCIETES" 大写:
/**
* @ORM\ManyToOne(targetEntity="Categorie", inversedBy="SOCIETES")
* @ORM\JoinColumn(name="ID_CATEGORIE", referencedColumnName="ID")
*/
private $CATEGORIE;