Ver Mensaje Individual
  #12 (permalink)  
Antiguo 24/11/2014, 08:18
Avatar de Dundee
Dundee
 
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 22 años, 4 meses
Puntos: 8
Respuesta: Alguna aplicación de ejemplo con varias relaciones

Cita:
Iniciado por SirDuque Ver Mensaje
Perdón me quede con "claves compuestas"

En ese caso quita @ORM\Id de $book_id ya que es un FK y no un Primary de la entidad Branch.

Y del constructor quita $this->id = $id


Saludos
No lo entiendo bien, pero aún así sale con error:
Versión reducido Xd.
Código PHP:
class Branch {

  
/**
   * @var integer
   *
   * @ORM\Column(name="id", type="integer", nullable=false)
   * @ORM\GeneratedValue(strategy="AUTO")
   * @ORM\Id
   */
  
private $id;

  
/**
   * @var intenger
   * 
   * @ORM\Column(name="book_id", type="integer", nullable=false)
   * @ORM\ManyToOne(targetEntity="Book", inversedBy="Branch")
   */
  
private $book_id;

  public function 
__construct($book_id) {
    
//$this->id = $id; // The branch id.
    
$this->book_id $book_id// The book id.
  
}

Versión reducida de controller.
Código PHP:
  public function createBranchAction(Request $request$book_id$parent_branch_id) {

    
$em $this->getDoctrine()->getManager();

    
$parent_branch $em->getRepository('BranchMainBundle:Branch')->find(array(
     
'id' => $parent_branch_id
     
'book_id' => $book_id
       
));

    
// Actual book 
    
$actual_book $em->getRepository('BranchMainBundle:Book')->find($book_id);
  
    
// Presist book
    
$em->persist($actual_book);


El constructor no debe llevar las dos propiedades que forman la calve primaria Id + BookId ?. Book_id no es ningun Foreign Key sino parte de la calve primaria compuesta.

La verdad que estoy un poco hecho un lío.

Gracias de antemano.
__________________
Videotutoriales de Drupal