私には2つのクラスがあります-PageとSiteVersionは、多対多の関係があります。SiteVersionのみが関係を認識します(サイトはモジュール式であり、SiteVersionが属するモジュールを削除してドロップできるようにしたいため)。
したがって、SiteVersionの基準に基づいてページを選択するにはどうすればよいですか?
たとえば、これは機能しません。
SELECT p FROM SiteVersion v JOIN v.pages p WHERE v.id = 5 AND p.slug='index'
エラーが発生します:
[Doctrine\ORM\Query\QueryException]
[Semantical Error] line 0, col -1 near 'SELECT p FROM': Error: Cannot select entity through identification variables without choosing at least one root entity alias.
このクエリで「v」を選択できますが。
リレーションシップのクラス(PageToVersionクラス)を導入することでこれを解決できると思いますが、それを行わない、または双方向にする方法はありますか?