私は2つのnetitiesuser&serviceとdoctrineによって生成された結合テーブルuser_serviceを持っています、私はここに多対多の関係を追加しようとしました:私が追加した注釈です:
エンティティユーザー側:
/**
* @ORM\ManyToMany(targetEntity="Service", inversedBy="users")
* @ORM\JoinTable(name="user_service",
* joinColumns={@ORM\JoinColumn(name="user_id", referencedColumnName="id")},
* inverseJoinColumns={@ORM\JoinColumn(name="service_id", referencedColumnName="id")}
* )
*/
protected $services;
エンティティサービス側:
/**
* @ORM\ManyToMany(targetEntity="User", mappedBy="services")
*/
protected $users;
すべてが正常に機能しているようですが、このリクエストを行うと:
$query = $em->createQuery(
'SELECT u
FROM ApplicationFrontBundle:User u
JOIN u.service s
WHERE u.id = :id
'
)->setParameters(array('id'=> $id));
$services = $query->getArrayResult();
このエラーがあります:
[Semantical Error] line 0, col 91 near 's
': Error: Class Application\FrontBundle\Entity\User has no association named service
しかし、私がそれが機能するオブジェクトによってそれを行うとき、問題はそれが多くの要求を実行することです