J'essaie de créer une association bidirectionnelle "OneToMany" dans mon projet mais lorsque j'exécute "doctrine: schéma: mise à jour", rien ne se passe.Impossible de créer une association sur Symfony2
Si je crée cette association directement à partir Sequel Pro et exécutez la commande de schéma de mise à jour, qui change Dissapear ...:/
Les relations est: - Un "id" de clients Table avec de nombreux "customer_id" formulaire Table de contrôle.
Voici le code clients:
<?php
namespace Ourentec\CustomersBundle\Entity;
use Doctrine\Common\Collections\ArrayCollection;
use Doctrine\ORM\Mapping as ORM;
/**
* Customers
*
* @ORM\Table()
* @ORM\Entity
*/
class Customers
{
/* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var string
*
* @ORM\Column(name="name", type="string", length=100)
*/
private $name;
/**
* @var string
*
* @ORM\Column(name="lastname", type="string", length=100)
*/
private $lastname;
/**
* @var string
*
* @ORM\Column(name="address", type="text")
*/
private $address;
/**
* @var string
*
* @ORM\Column(name="phone", type="string", length=100)
*/
private $phone;
/**
* @var string
*
* @ORM\Column(name="pass", type="string", length=100)
*/
private $pass;
/**
* @var string
*
* @ORM\Column(name="tasks", type="text")
*/
private $tasks;
/**
* @var string
*
* @ORM\Column(name="status", type="string", length=100)
*/
private $status;
/**
* @var string
*
* @ORM\Column(name="email", type="string", length=100)
*/
private $email;
/**
* @var \DateTime
*
* @ORM\Column(name="date", type="datetime")
*/
private $date;
/**
* @var string
*
* @ORM\Column(name="location", type="string", length=100)
*/
private $location;
/**
* @ORM\OneToMany(targetEntity="Control", mappedBy="customers")
*/
private $customer_id;
public function __construct()
{
$this->customer_id = new ArrayCollection();
}
Et le code de commande:
<?php
namespace Ourentec\CustomersBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* Control
*
* @ORM\Table()
* @ORM\Entity
*/
class Control
{
/**
* @var integer
*
* @ORM\Column(name="id", type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="AUTO")
*/
private $id;
/**
* @var integer
*
* @ORM\Column(name="customer_id", type="integer")
*
* @ORM\ManyToOne(targetEntity="Customers", inversedBy="control")
* @ORM\JoinColumn(name="customer_id", referencedColumnName="id")
*/
private $customerId;
/**
* @var integer
*
* @ORM\Column(name="user_id", type="integer")
*/
private $userId;
/**
* @var \DateTime
*
* @ORM\Column(name="date", type="datetime")
*/
private $date;
/**
* @var integer
*
* @ORM\Column(name="seen", type="smallint")
*/
private $seen;
J'ai suivi la documentation de ce 2 sites http://symfony.com/doc/current/book/doctrine.html http://librosweb.es/libro/symfony_2_x/capitulo_8/relaciones_y_asociaciones_de_entidades.html
Mais je ne Sachez pourquoi cela ne fonctionne pas ..
Toute idée sera appréciée :)
Chapeau de Mateusz !!! Ca a marché :) –
Je suis content d'entendre ça :) –