volviendo con el mismo ejemplo, se me fue algo complicado comprender el concepto pero creo que lo tengo: quisiera saber si este ejemplo esta bien: considerando que es self-referencing el lado propietario es parent y el inverso departamentos.
Código PHP:
Ver original<?php
namespace Entities;
use Doctrine\ORM\Mapping as ORM;
/**
* Departamento
*
* @Table(name="departamento")
* @Entity
*/
class Departamento
{
/**
* @var integer
* @Column(name="id", type="integer", nullable=false)
* @Id
* @GeneratedValue(strategy="IDENTITY")
*/
private $id;
/**
* @var string
*
* @Column(name="descripcion", type="string", length=200, nullable=false)
*/
private $descripcion;
/**
* @OneToMany(targetEntity="Departamento", inversedBy="departamentos")
* @JoinColumn(name="departamento_id", referencedColumnName="id")
**/
private $parent;
/**
* @var string
*
* @Column(name="nombrecargousuario", type="string", length=200, nullable=false)
*/
private $nombrecargousuario;
/**
* @var integer
* @ManyToOne(targetEntity="Departamento",mappedBy="parent")
* @Column(name="departamento_id", type="integer", nullable=false)
*
* @Column(name="departamento_id", type="integer", nullable=false)
*/
private $departamentos;
/**
* @var string
*
* @Column(name="sigla", type="string", length=50, nullable=false)
*/
private $sigla;
/**
* @var string
*
* @Column(name="formacite", type="string", length=20, nullable=false)
*/
private $formacite;
/**
* @var \DateTime
*
* @Column(name="fecha", type="date", nullable=false)
*/
private $fecha;
/**
* @var string
*
* @Column(name="estado", type="string", length=1, nullable=false)
*/
private $estado;
public function __construct(){
$this ->departamentos = new \Doctrine\Common\Coollections\ArrayCollection();
}
}
gracias