我正在从自定义 PDO 查询中加载大量User
相关Group
对象(使用 Doctrine connection => $dbh = Doctrine_Manager::connection()->getDbh(); )。该查询涉及 DQL 中不支持的交叉连接。
我正在手动创建对象并像这样传递值:
foreach($pdo as $p) {
$u = new User();
$u->userid = $p['userid'];
$u->username = $['username'];
//$u->some_field; skipped on purpose
$u->Group->groupid = $['groupid'];
$u->Group->groupname = $['groupname'];
array_push($return, $set);
}
我希望能够保存User()
对象(因为在$u->some_field
这种情况下可以更改)。然而,Doctrine 试图插入并且违反了键约束。
我知道错误被抛出,但是我希望能够只更新该some_field
列(也许最重要的是:NOT THE GROUP)。使用上述预加载,这一切都可能吗?