簡體   English   中英

關系ManyToMany,多余的字段被忽略

[英]Relationship ManyToMany, the extra field ignored

我的問題肯定很愚蠢。

我有3個實體:activity,category和categorieActivite,其中以下代碼:

/**
 * Class Activite
 * @ORM\Entity
 * @ORM\Table(name="activite")
 */
 class Activite{
/**
 * @ORM\Id
 * @ORM\Column(type="integer")
 * @ORM\GeneratedValue(strategy="AUTO")
 */
protected $id;
/**
* @ORM\Column(type="string",length=255)
*/
protected $nom;

/**
 * @ORM\OneToMany(targetEntity="CategorieActivite",mappedBy="activite")
 */
protected $categorieList;

 }


 class Categorie{
/**
 * @ORM\Id
 * @ORM\Column(type="integer")
 * @ORM\GeneratedValue(strategy="AUTO")
 */
protected $id;
/**
 * @ORM\Column(type="string",length=255)
 */
protected $nom;

/**
 * @ORM\OneToMany(targetEntity="CategorieActivite",mappedBy="categorie")
 */
protected $activiteList;
}


class CategorieActivite{


/**
 * @ORM\Id
 * @ORM\ManyToOne(targetEntity="Categorie",inversedBy="activiteList")
 * @ORM\JoinColumn(name="categorie_id", referencedColumnName="id", nullable=false)
 */
protected $categorie;

/**
 * @ORM\Id
 * @ORM\ManyToOne(targetEntity="Activite",inversedBy="categorieList")
 * @ORM\JoinColumn(name="activite_id", referencedColumnName="id", nullable=false)
*/
protected $activite;

/**
 * ORM\Column(type="string",length=50)
 * @Assert\Choice(choices = {"Intense", "Douce", "Moyenne"}, message = "Veuillez choisir une valeur")
 * @Assert\NotNull()
 */
protected $intensite;

}

到目前為止,一切工作正常。 但是問題是CategorieActivite實體的強度沒有出現在數據庫中,只有外鍵出現。 你對這個問題有想法嗎?

預先感謝您的幫助。

蒂博。

在您的$ intensite屬性上

* ORM\Column(type="string",length=50)

應該:

* @ORM\Column(type="string",length=50)

可以肯定會為您解決。 修復注釋后,您需要運行doctrine:migrations:diff。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM