我有一个$phone
传递给存储库方法的 LibPhoneNumber 对象。在我的存储库方法中,我有:
return $this->getEntityManager()
->createQuery(
'SELECT p, m FROM AppBundle:Phone p JOIN p.member m WHERE p.phoneNumber = :phone AND m.allowFind = TRUE'
)
->setParameter("phone", $phone)
->getOneOrNullResult();
问题是正在生成和运行的查询字面上插入'Object(libphonenumber\PhoneNumber)'
WHERE p0_.phone_number = 'Object(libphonenumber\\PhoneNumber)' AND m1_.allow_find = 1
如果我使用默认存储库方法findOneByPhoneNumber($phone)
,它会正确地将电话号码转换为存储在数据库中的格式+14565551212