私は抽象的なエンティティを持っています (アプリ - ベースコア):
namespace App\Bundles\AppBundle\Entity;
abstract class App extends ContainerAware implements AppInterface
{
// .....
}
および自己エンティティ:
namespace AppRus\Bundles\AppBundle\Entity;
use Doctrine\ORM\Mapping as ORM,
App\Bundles\AppBundle\Entity\App as BaseApp;
/**
* App
*
* @ORM\Table(name="apps")
* @ORM\Entity(repositoryClass="AppRus\Bundles\AppBundle\Entity\AppRepository")
*/
class App extends BaseApp
{
// ....
}
統制リビジョンのエンティティ:
namespace App\Bundles\AppBundle\Entity;
use Doctrine\ORM\Mapping as ORM;
/**
* AppHistory
*
* @ORM\Table(name="apps_history")
* @ORM\Entity(repositoryClass="App\Bundles\AppBundle\Entity\AppHistoryRepository")
*/
class AppHistory
{
/**
* @var integer
*
* @ORM\ManyToOne(targetEntity="App\Bundles\AppBundle\Entity\App")
* @ORM\JoinColumn(name="app_apple_id", referencedColumnName="apple_id")
*/
private $app;
}
AppHistory#app から App#apple_id へのリレーションを作成できません
エンティティを抽象クラス App に設定すると、Doctrine は新しいテーブル「App」を作成します MappedSuperClass を抽象クラス App に設定すると、エラーが発生します: http://docs.doctrine-project.org/en/latest/reference/inheritance -mapping.html#mapped-スーパークラス
AppHistory から抽象的なコア App への関係を作成するにはどうすればよいですか?