私はSymfony 2.7を使用しています。私はHow to Work with multiple Entity Managers and ConnectionsについてのSymfony2に関する文書に従った。私はこのサイトのすべてのソリューションを試しましたが、成功しませんでした。私はいつも同じエラーを持っている:Symfony2エンティティ間の関係クロスバンドルと複数のエンティティマネージャ
[教義\共通\永続\マッピング\ MappingException]クラス 「スポット\ OfferBundle \エンティティ\オファー」はチェーンで見つかりませんでしたが 名前空間ダッシュボード\ ProjectBundle \エンティティを構成し
私のプロジェクトでは、2つのバンドルがあります。すべてのバンドルは、異なるエンティティマネージャと連携して動作します。ここに私の設定ファイル:
# Doctrine Configuration
doctrine:
dbal:
default_connection: default
connections:
default:
driver: %database2_driver%
host: %database2_host%
port: %database2_port%
dbname: %database2_name%
user: %database2_user%
password: %database2_password%
charset: UTF8
spot:
driver: %database3_driver%
host: %database3_host%
port: %database3_port%
dbname: %database3_name%
user: %database3_user%
password: %database3_password%
charset: UTF8
orm:
auto_generate_proxy_classes: %kernel.debug%
default_entity_manager: default
entity_managers:
default:
connection: default
mappings:
DashboardProjectBundle: ~
spot:
connection: spot
mappings:
SpotOfferBundle: ~
私はバンドル
間の関係を持つ2つのエンティティ最初の持っている:
namespace Dashboard\ProjectBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* Project
*
* @ORM\Table(name="project")
* @ORM\Entity
*/
class Project
{
/**
* @var Spot\OfferBundle\Entity\Offer
*
* @ORM\ManyToOne(targetEntity="Spot\OfferBundle\Entity\Offer", inversedBy="projects")
* @ORM\JoinColumns({
* @ORM\JoinColumn(name="offer_id", referencedColumnName="id")
* })
*/
private $offer;
そして第二に:私は使用文で試す
namespace Spot\OfferBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* Offer
*
* @ORM\Table(name="offer")
* @ORM\Entity(repositoryClass="Spot\OfferBundle\Entity\OfferRepository")
*/
class Offer {
/**
*
* @ORM\OneToMany(targetEntity="Dashboard\ProjectBundle\Entity\Project", mappedBy="offer")
*/
private $projects;
を、私はAppKernelとBundlesが定義されていることを確認します。私は先頭のバックスラッシュで試してみます。しかしnothig作品。
チェック[この](https://techpunch.co.uk/development/using-multiple-databases-with-symfony2-and-doctrine2)記事 – Matteo