Symfony2的。实体中

时间:2015-06-16 10:00:12

标签: php postgresql symfony doctrine-orm

我有两个学说实体:

class User extends BaseUser
{
    /**
     * @var ArrayCollection
     * @ORM\OneToMany(targetEntity="AppBundle\Entity\Account", mappedBy="user")
     */
    protected $accounts;

class Account
{
    /**
     * @var \UserBundle\Entity\User
     * @ORM\ManyToOne(targetEntity="\UserBundle\Entity\User", inversedBy="accounts")
     * @ORM\JoinColumn(name="a_person_obj_id", referencedColumnName="obj_id")
     */
    protected $user;

问题是Account实体的数据存储在实体User的不同数据库中。

当我获得用户实体时:

$userRepository = $this->getDoctrine()->getRepository('UserBundle:User', 'db1');
$user = $userRepository->find($user);

并开始按$user->getAccounts()进行迭代我得到了异常:

SQLSTATE[42P01]: Undefined table: 7 ERROR: relation "account" does not exist

这绝对正确,因为帐户存储在“db2”中,我需要为这些数据使用不同的实体管理器。

在实体的许多数据库之间建立关系的最佳实践是什么?

P.S。我曾经使用postgreSQL数据库。

0 个答案:

没有答案