Ver Mensaje Individual
  #7 (permalink)  
Antiguo 21/11/2014, 04:13
Avatar de Dundee
Dundee
 
Fecha de Ingreso: junio-2002
Ubicación: El Médano
Mensajes: 1.310
Antigüedad: 22 años, 5 meses
Puntos: 8
Respuesta: Warning: spl_object_hash() expects parameter 1 to be object, integer given

Bueno me vuelvo a encontrar con el mismo error al intentar guardar el objeto en la bd, la verdad que no lo entiendo, porque es un objeto , ¿por qué dice que es un entero?.

Código:
public function createAction(Request $request){
      
        $em = $this->getDoctrine()->getManager();
      
       // crea una task y le asigna algunos datos ficticios para este ejemplo
        $parent_book = new Book();
        $parent_book->setId(2); 
//Esta es la Id metida a mano, para ello he creado su setter y getter pertinentes.
        
        var_dump($parent_book);
        //guardas parent
        $em->persist($parent_book);

        $book = new Book();
        $book->setPhrase('Write a blog post');
        $book->setParentBranch($parent_book->getId());
       // $book->setDueDate(new \DateTime('tomorrow'));
        $book->setCreatorUid(1);

        $form = $this->createFormBuilder($book)
            ->add('phrase', 'text')
            ->add('parentBranch', 'integer')
            ->add('creatorUid', 'integer')
          //  ->add('dueDate', 'date')
            ->add('save', 'submit')
            ->getForm();
 
        $form->handleRequest($request);
 
        if ($form->isValid()) {
            // guardar la tarea en la base de datos
            $em = $this->getDoctrine()->getManager();
            $em->persist($book);
            $em->flush();

            return $this->redirect($this->generateUrl('task_success'));
        }
            return $this->render('BookMainBundle:Default:new.html.twig', array(
            'form' => $form->createView(),
        ));
    
    }
Código:
    /**
     * Get id
     *
     * @return integer 
     */
    public function getId()
    {
        return $this->id;
    }
    
     /**
     * Set id
     *
     * @return integer 
     */
    public function setId($id)
    {
        $this->id = $id;
        return $this->id;
    }
Gracias de antemano.
__________________
Videotutoriales de Drupal