gpt4 book ai didi

php - Doctrine2 findBy关系对象触发字符串转换错误

转载 作者:IT王子 更新时间:2023-10-29 00:07:08 26 4
gpt4 key购买 nike

假设我在 Doctrine2 中有两个相互关联的实体,Models\User 和 Models\Comment。如果我在 Doctrine 2.0.0 中这样做......

<?php
// $em instanceof EntityManager, $user instanceof Models\User
$comments = $em->getRepository('Models\Comment')
->findBy(array('user' => $user, 'public' => true));

...我收到一个 PHP 错误:

Severity: Notice

Message: Object of class Models\User to string conversion

Filename: DBAL/Connection.php

Line Number: 574

这不应该发生,对吧?如果我使用 QueryBuilder 和 setParameter('user', $user) 它会按预期工作。

最佳答案

允许按关系查询,但您必须在其中传递标识符。尚不支持按对象查询,仅支持 2.1。

<?php
// $em instanceof EntityManager, $user instanceof Models\User
$comments = $em->getRepository('Models\Comment')
->findBy(array('user' => $user->getId(), 'public' => true));

关于php - Doctrine2 findBy关系对象触发字符串转换错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4619071/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com