Foros del Web » Programando para Internet » PHP » Symfony »

Error al actualizar base de datos despues de crear entidad

Estas en el tema de Error al actualizar base de datos despues de crear entidad en el foro de Symfony en Foros del Web. Buenas. Estoy tratando de actualizar la base de datos de mi aplicación depues de crear la entidad rol y me da el siguiente error: @import ...
  #1 (permalink)  
Antiguo 30/09/2012, 17:55
 
Fecha de Ingreso: septiembre-2012
Mensajes: 19
Antigüedad: 11 años, 7 meses
Puntos: 0
Pregunta Error al actualizar base de datos despues de crear entidad

Buenas.

Estoy tratando de actualizar la base de datos de mi aplicación depues de crear la entidad rol y me da el siguiente error:

Código Apache:
Ver original
  1. [Doctrine\Common\Annotations\AnnotationException]                                                                                  
  2.   [Type Error] Attribute "length" of @ORM\Column declared on property UNID\OtcBundle\Entity\Role::$name expects a(n) integer, but g  
  3.   ot string.

La entidad Rol contiene lo siguiente:

Código PHP:
Ver original
  1. namespace UNID\OtcBundle\Entity;
  2.  
  3.  
  4. use Symfony\Component\Security\Core\Role\RoleInterface;
  5. use Doctrine\ORM\Mapping as ORM;
  6.  
  7. /**
  8.  * @ORM\Entity
  9.  * @ORM\Table(name="admin_roles")
  10.  */
  11. class Role implements RoleInterface
  12. {
  13.     /**
  14.      * @ORM\Id
  15.      * @ORM\Column(type="integer")
  16.      * @ORM\GeneratedValue(strategy="AUTO")
  17.      */
  18.     protected $id;
  19.  
  20.     /**
  21.      * @ORM\Column(name="nombre", type="string", length="255")
  22.      */
  23.     protected $name;
  24.  
  25.     /**
  26.      * Get id
  27.      *
  28.      * @return integer
  29.      */
  30.     public function getId()
  31.     {
  32.         return $this->id;
  33.     }
  34.  
  35.     /**
  36.      * Set name
  37.      *
  38.      * @param string $name
  39.      */
  40.     public function setName($name)
  41.     {
  42.         $this->name = $name;
  43.     }
  44.  
  45.     /**
  46.      * Get name
  47.      *
  48.      * @return string
  49.      */
  50.     public function getName()
  51.     {
  52.         return $this->name;
  53.     }
  54.  
  55.     public function getRole() {
  56.         return $this->getName();
  57.     }
  58.  
  59.     public function __toString() {
  60.         return $this->getRole();
  61.     }
  62. }

Agradezco si alguien puede orientarme.
  #2 (permalink)  
Antiguo 30/09/2012, 18:03
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: Error al actualizar base de datos despues de crear entidad

Es un tema de Doctrine, nada tiene que ver Symfony en el error que tienes, y creo que el mensaje es bastante claro, le estas pasando un string cuando espera un integer, osea quita las comillas del valor,

Código PHP:
Ver original
  1. //mal
  2.  /**
  3.   * @ORM\Column(name="nombre", type="string", length="255")
  4.   */
  5.  
  6. //bien
  7. /**
  8.   * @ORM\Column(name="nombre", type="string", length=255)
  9.   */

Te sugiero que leas la documentación de la herramienta que estas utilizando http://docs.doctrine-project.org/pro...est/index.html

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)
  #3 (permalink)  
Antiguo 30/09/2012, 18:07
 
Fecha de Ingreso: septiembre-2012
Mensajes: 19
Antigüedad: 11 años, 7 meses
Puntos: 0
Respuesta: Error al actualizar base de datos despues de crear entidad

Gracias masterpuppet.

No sé como crear un tema de Doctrine, por eso las veces que he creado los temas de Doctrine los asocio con symfony.

Gracias y mis disculpas.
  #4 (permalink)  
Antiguo 30/09/2012, 18:23
Avatar de masterpuppet
Software Craftsman
 
Fecha de Ingreso: enero-2008
Ubicación: Montevideo, Uruguay
Mensajes: 3.550
Antigüedad: 16 años, 3 meses
Puntos: 845
Respuesta: Error al actualizar base de datos despues de crear entidad

Me refiero a que el tema esta relacionado a doctrine, el titulo en vez de ser "Symfony Error al actualizar" podría ser "Doctrine Error al actualizar" ;)

Una sugerencia, si sigues las convenciones de doctrine(están en la doc) vas a escribir menos código, esto:
Código PHP:
Ver original
  1. /**
  2.   * @ORM\Column(name="nombre", type="string", length=255)
  3.   */
  4.  protected $name;

es igual a

Código PHP:
Ver original
  1. /**
  2.   * @ORM\Column(name="nombre")
  3.   */
  4.  protected $name;
y si codeas todo en un idioma(para mi gusto mejor, español o ingles, el espanglish marea) es menos aún

Código PHP:
Ver original
  1. /**
  2.   * @ORM\Column()
  3.   */
  4.  protected $name;

Saludos.
__________________
http://es.phptherightway.com/
thats us riders :)
  #5 (permalink)  
Antiguo 30/09/2012, 19:36
 
Fecha de Ingreso: septiembre-2012
Mensajes: 19
Antigüedad: 11 años, 7 meses
Puntos: 0
Pregunta Respuesta: Error al actualizar base de datos despues de crear entidad

Ok. Ya entendí.

Sabes que sigo teniendo problema con la obtención de los datos al autenticar.

Me diste unos consejos cuando publique en esta sección: http://www.forosdelweb.com/f68/como-obtener-datos-session-twig-1015216-new/

Instalé la versión 2.1.2 pensando que podía ser la versión, pero aun me sigue dando el error: Fatal error: Call to a member function getUsername() on a non-object in /var/www/Symfony/src/UNID/OtcBundle/Controller/DefaultController.php on line 11

Ya no sé qué hacer

Etiquetas: doctrine2, symfony2
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 02:25.