2013-11-12 6 views
0

я использую symfony 2 и doctrine создать класс enitity с внешним ключомне в состоянии рассмотреть внешний ключ Ограничить в базе данных

вот моя сущность класса, теперь вопрос, когда я проверить таблицу fos_user в базе данных MySQL, я не вижу travel_access_token и travel_id в качестве внешнего ключа, и даже если я изменяю значение travel_id в базе данных fos_user, то не возникает никаких проблем.

я есть один на один однонаправленный отношение как только один пользователь может иметь один маркер только

<?php 

namespace Travel\HomeBundle\Entity; 

use FOS\UserBundle\Entity\User as BaseUser; 
use Doctrine\ORM\Mapping as ORM; 

/** 
* @ORM\Entity 
* @ORM\Table(name="fos_user") 
*/ 
class User extends BaseUser 
{ 
    /** 
    * @ORM\Id 
    * @ORM\Column(type="integer") 
    * @ORM\GeneratedValue(strategy="AUTO") 
    */ 
    protected $id; 

    /** @ORM\Column(name="facebook_id", type="string", length=255, nullable=true) */ 
    protected $facebook_id; 

    /** @ORM\Column(name="facebook_access_token", type="string", length=255, nullable=true) */ 
    protected $facebook_access_token; 



    /** 

    @ORM\Column(name="travel_id", type="string", length=255, nullable=true) 
    @ORM\OneToOne(targetEntity="Travel\HomeBundle\Entity\Client") 
    @ORM\JoinColumn(name="travel_id", referencedColumnName="id") 

    */ 

    protected $travel_id; 


    /** 

     @ORM\Column(name="travel_access_token", type="string", length=255, nullable=true) 
     @ORM\OneToOne(targetEntity="Travel\HomeBundle\Entity\Client") 
     @ORM\JoinColumn(name="travel_access_token", referencedColumnName="secret") 

    */ 

    protected $travel_access_token; 




    public function __construct() 
    { 
     parent::__construct(); 
     // your own logic 
    } 


} 

?> 

ответ

0

Как «targetEntity» попробовать использовать только имена сущностей. Например:

@ORM\OneToOne(targetEntity="Client") 
+0

nope tht не решает проблему – Hunt

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