Ver Mensaje Individual
  #8 (permalink)  
Antiguo 21/11/2014, 10:13
Avatar de hhs
hhs
Colaborador
 
Fecha de Ingreso: junio-2013
Ubicación: México
Mensajes: 2.995
Antigüedad: 11 años, 5 meses
Puntos: 379
Respuesta: Warning: spl_object_hash() expects parameter 1 to be object, integer given

No requieres un setId() para Book
Código PHP:
Ver original
  1. class Book
  2. {
  3.     /**
  4.      * @var integer
  5.      *
  6.      * @ORM\Column(name="id", type="integer")
  7.      * @ORM\Id
  8.      * @ORM\GeneratedValue(strategy="AUTO")
  9.      */
  10.     private $id;
Con esto el Id se genera de forma automática.
Esto no es necesario:
Código PHP:
Ver original
  1. $book->setParentBranch($parent_book->getId()); // no es necesario
  2. $book->setParentBranch($parent_book); //correcto, recuerda que las relaciones son con otros objetos
En el formulario el campo parentBranch debe de ser un "entity" no un entero:
Código PHP:
Ver original
  1. ->add('parentBranch', 'entity') //no puede ser integer
debes de tener dos operaciones para esto, en una solo agregas los "Branch" y en otra los libros para que tengas algo que mostrar en el campo parentBranch.
Y por ultimo deja de pensar en términos del modelo ER, en el código son objetos asi que todos los tipos de relaciones son entre objetos, doctrine se encarga guardar todo de forma correcta en la base de datos.
__________________
Saludos
About me
Laraveles
A class should have only one reason to change.