2013-07-29 5 views
1

Это мой аннотаций файл Doctrine2, который возвращает мне эту ошибкуDoctrine2 Первичный ключ

MappingException: Нет Идентификатор/первичный ключ, указанный для лица "WbsGo \ clientsBundle \ Entity \ VtigerPortalinfo". Каждый объект должен иметь идентификатор/первичный ключ.

В БД поля ID устанавливается на первичный ключ ... Так что я не знаю, где проблема ....

<?php 

namespace WbsGo\clientsBundle\Entity; 

use Doctrine\ORM\Mapping as ORM; 

/** 
* VtigerPortalinfo 
*/ 
class VtigerPortalinfo 
{ 
    /** 
    * @var string 
    */ 
    private $userName; 

    /** 
    * @var string 
    */ 
    private $userPassword; 

    /** 
    * @var string 
    */ 
    private $type; 

    /** 
    * @var \DateTime 
    */ 
    private $lastLoginTime; 

    /** 
    * @var \DateTime 
    */ 
    private $loginTime; 

    /** 
    * @var \DateTime 
    */ 
    private $logoutTime; 

    /** 
    * @var integer 
    */ 
    private $isactive; 

    /** 
    * @var \WbsGo\clientsBundle\Entity\VtigerContactdetails 
    * @ORM\Id 
    * @ORM\Column(type="integer") 
    * @ORM\GeneratedValue(strategy="AUTO") 
    */ 
    private $id; 


    /** 
    * Set userName 
    * 
    * @param string $userName 
    * @return VtigerPortalinfo 
    */ 
    public function setUserName($userName) 
    { 
     $this->userName = $userName; 

     return $this; 
    } 

    /** 
    * Get userName 
    * 
    * @return string 
    */ 
    public function getUserName() 
    { 
     return $this->userName; 
    } 

    /** 
    * Set userPassword 
    * 
    * @param string $userPassword 
    * @return VtigerPortalinfo 
    */ 
    public function setUserPassword($userPassword) 
    { 
     $this->userPassword = $userPassword; 

     return $this; 
    } 

    /** 
    * Get userPassword 
    * 
    * @return string 
    */ 
    public function getUserPassword() 
    { 
     return $this->userPassword; 
    } 

    /** 
    * Set type 
    * 
    * @param string $type 
    * @return VtigerPortalinfo 
    */ 
    public function setType($type) 
    { 
     $this->type = $type; 

     return $this; 
    } 

    /** 
    * Get type 
    * 
    * @return string 
    */ 
    public function getType() 
    { 
     return $this->type; 
    } 

    /** 
    * Set lastLoginTime 
    * 
    * @param \DateTime $lastLoginTime 
    * @return VtigerPortalinfo 
    */ 
    public function setLastLoginTime($lastLoginTime) 
    { 
     $this->lastLoginTime = $lastLoginTime; 

     return $this; 
    } 

    /** 
    * Get lastLoginTime 
    * 
    * @return \DateTime 
    */ 
    public function getLastLoginTime() 
    { 
     return $this->lastLoginTime; 
    } 

    /** 
    * Set loginTime 
    * 
    * @param \DateTime $loginTime 
    * @return VtigerPortalinfo 
    */ 
    public function setLoginTime($loginTime) 
    { 
     $this->loginTime = $loginTime; 

     return $this; 
    } 

    /** 
    * Get loginTime 
    * 
    * @return \DateTime 
    */ 
    public function getLoginTime() 
    { 
     return $this->loginTime; 
    } 

    /** 
    * Set logoutTime 
    * 
    * @param \DateTime $logoutTime 
    * @return VtigerPortalinfo 
    */ 
    public function setLogoutTime($logoutTime) 
    { 
     $this->logoutTime = $logoutTime; 

     return $this; 
    } 

    /** 
    * Get logoutTime 
    * 
    * @return \DateTime 
    */ 
    public function getLogoutTime() 
    { 
     return $this->logoutTime; 
    } 

    /** 
    * Set isactive 
    * 
    * @param integer $isactive 
    * @return VtigerPortalinfo 
    */ 
    public function setIsactive($isactive) 
    { 
     $this->isactive = $isactive; 

     return $this; 
    } 

    /** 
    * Get isactive 
    * 
    * @return integer 
    */ 
    public function getIsactive() 
    { 
     return $this->isactive; 
    } 

    /** 
    * Set id 
    * 
    * @param \WbsGo\clientsBundle\Entity\VtigerContactdetails $id 
    * @return VtigerPortalinfo 
    */ 
    public function setId(\WbsGo\clientsBundle\Entity\VtigerContactdetails $id = null) 
    { 
     $this->id = $id; 

     return $this; 
    } 

    /** 
    * Get id 
    * 
    * @return \WbsGo\clientsBundle\Entity\VtigerContactdetails 
    */ 
    public function getId() 
    { 
     return $this->id; 
    } 
} 
+0

Вы уверены, что ваши сущности используют аннотации? Нет поля, кроме $ id, похоже, в вашем примере есть @ORM-аннотации, поэтому похоже, что вы используете YAML или XML. Можете ли вы проверить это? –

ответ

1

Может быть, если вы измените аннотации строки $ id для этой строки:

*ORM\GeneratedValue(strategy="IDENTITY") 
+0

, если я так выразился, я не могу изменить значение и сохранить его в базе данных больше, любая идея? – Zennichimaro

Смежные вопросы