私のテーブル内の2つのフィールドを追加することができません。これは、エンティティコード私は私の新しいテーブルにデータを挿入しようとしている
<?php
namespace IT\ITBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* Famille
* @ORM\Table(name="famille")
* @ORM\Entity(repositoryClass="IT\ITBundle\Repository\FamilleRepository")
*/
class Famille
{
/**
* @var int
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="lien", type="string", length=255, nullable=true)
*/
private $lien;
/**
* @ORM\ManyToOne(targetEntity="IT\ITBundle\Entity\Personne", inversedBy="familles")
* @ORM\JoinColumn(nullable=false)
*/
private $personne;
/**
* @ORM\OneToMany(targetEntity="IT\ITBundle\Entity\Famille", mappedBy="personne",cascade={"persist"})
* @ORM\JoinColumn(name="enfant_id", referencedColumnName="id")
*/
private $enfant;
/**
* Get id
*
* @return integer
*/
public function getId()
{
return $this->id;
}
/**
* Set lien
*
* @param string $lien
* @return Famille
*/
public function setLien($lien)
{
$this->lien = $lien;
return $this;
}
/**
* Get lien
*
* @return string
*/
public function getLien()
{
return $this->lien;
}
/**
* Set personne
*
* @param \IT\ITBundle\Entity\Personne $personne
*
* @return Famille
*/
public function setPersonne(\IT\MITBundle\Entity\PersonnePhysique $personne = null)
{
$this->personne = $personne;
return $this;
}
/**
* Get personne
*
* @return \Doctrine\Common\Collections\ArrayCollection
*/
public function getPersonne()
{
return $this->personne;
}
/**
* Set enfant
*
* @param PersonnePhysique $personne
*
* @return Famille
*/
public function setEnfant($enfant)
{
$this->enfant = $enfant;
return $this;
}
/**
* Get enfant
*
* @return Personne
*/
public function getEnfant()
{
return $this->enfant;
}
public function __construct()
{
$this->familles = new \Doctrine\Common\Collections\ArrayCollection();
}
}
であり、これは私の第二のエンティティ
/** です* @varコレクション。 * @ORM \ OneToMany(targetEntity = "IT ITBundle \エンティティ\ファミーユ\"、カスケード= { "削除" "持続"}、mappedBy = "PERSONNE")
*/
private $familles;
私のコントローラは
ありますpublic function newAction(Request $request)
{
$controle = $this->get('Controles');
if(($controle->is_Granted('Ajout personne Morale','Client/Societaire',$this->getUser()))==false){throw new AccessDeniedException();}
$personne = new PersonneMorale();
$form = $this->createForm(PersonneMoraleType::class, $personne);
$form->handleRequest($request);
$mails=$personne->getEmails();
if(!empty($mails)){
foreach($mails as $mail){
$mail->setPersonne($personne);
}
}
$adress=$personne->getAdresses();
if(!empty($adress)){
foreach($adress as $adre){
$adre->setPersonne($personne);
}
}
$tels=$personne->getTelecoms();
if(!empty($tels)){
foreach($tels as $tel){
$tel->setPersonne($personne);
}
}
$compteBancaires=$personne->getCompteBancaires();
if(!empty($compteBancaires)){
foreach($compteBancaires as $cmp){
$cmp->setPersonne($personne);
}
}
$contacts=$personne->getContacts();
if(!empty($contacts)){
foreach($contacts as $contact){
$contact->setPersonne($personne);
}
}
$familles=$personne->getfamilles();
if(!empty($familles)){
foreach($familles as $fam){
$fam->setFamille($personne);
}
}
if ($form->isSubmitted() && $form->isValid()) {
$em = $this->getDoctrine()->getManager();
$maxNum = $em->getRepository('ITBundle:Personne')->getMaxNumPersonne();
if($maxNum == null){
$personne->setNumpersonne(1000000);
}
else{
$personne->setNumpersonne($maxNum+1);
}
$em->persist($personne);
$em->flush();
// return $this->redirectToRoute('Personne_morale_index', array());
return $this->render('ClientsBundle:Morale:success.html.twig', array(
'personne' => $personne
));
}
return $this->render('ClientsBundle:Morale:new.html.twig', array(
'post' => $personne,
'form' => $form->createView()
));
}
、 実行をあなたは私が唯一の「先取特権」を保存することができますが、見ることができるように私はpersonne_idを保存したいとpersonne_id列がテーブル構造に存在しない場合 enter image description here
任意のエラーを得ましたか?あなたは何を質問していますか? –
あなたが見ることができるように私は "lien"だけを保存することができますが、私はpersonne_idとenfant_idを保存したい画像の説明を入力します –
任意の助けてください –