【发布时间】:2017-03-24 09:39:26
【问题描述】:
我有名为User 和UserPhoto 的模型,在一个用户中与多张用户照片相关
$this->hasMany("id", "UserPhoto", "user_id");
$this->belongsTo("user_id", "User", "id");
如果我尝试
$userData = User::find();
foreach ($userData as $user) {
$userPhotoAry = $user->UserPhoto;
}
我正在获取关系结果集,但我只需要从表中选择列。
所以我尝试了这个,
$userData = User::find(array("columns"=>"id,username"));
foreach ($userData as $user) {
$userPhotoAry = $user->UserPhoto;
}
我得到 $UserPhoto 未定义。
有没有办法在查找查询中提及列以及关系?
【问题讨论】:
-
正如@nikolay 所说,如果您在查询中指定列,则无法获取相关记录。因为您将返回
Phalcon\Mvc\Model\Row而不是模型实例。我可以补充一点,指定列实际上比查询整个记录慢
标签: phalcon phalcon-orm