【发布时间】:2012-07-31 13:37:52
【问题描述】:
我有 2 个实体,包括它的 setter 和 getter:
/**
* @ORM\Entity
* @ORM\Table(name="users")
*/
class User
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
protected $id;
/**
* @ORM\ManyToMany(targetEntity="SRC\PurchaseBundle\Entity\Purchase", inversedBy="users")
* @ORM\JoinTable(name="user_purchases",
* joinColumns={@ORM\JoinColumn(name="user_id", referencedColumnName="id")},
* inverseJoinColumns={@ORM\JoinColumn(name="purchase_id", referencedColumnName="id")}
* )
*/
protected $purchases;
...
}
/**
* @ORM\Entity
* @ORM\Table(name="purchases")
*/
class Purchase
{
/**
* @ORM\Column(type="integer")
* @ORM\Id
* @ORM\GeneratedValue(strategy="IDENTITY")
*/
protected $id;
/**
* @var users
*
* @ORM\ManyToMany(targetEntity="SRC\UserBundle\Entity\User", mappedBy="purchases")
*/
protected $users;
...
}
我需要为用户选择所有缺失的购买。
我已经通过获取所有现有购买并一一检查来实现这一点,它们在$user->getPurchases() 中不存在。
是否存在更好的方法来获得此结果?
有没有办法让我在 USER 实体中创建一个名为 getMissingPurchases() 的方法?
【问题讨论】:
标签: php symfony doctrine-orm entity