【发布时间】:2015-07-19 01:05:53
【问题描述】:
所以我想知道,我想看看一个表是否已经被延迟/急切地加载,而在我检查时没有实际加载它。例如:
class Listing extends \yii\db\ActiveRecord {
public function getListingImages()
{
return $this->hasMany(ListingImage::className(), ['listing_id' => 'id'])->orderBy(['position' => SORT_ASC]);
}
public function getCoverImage()
{
if (isset($this->listingImages)) {
return $this->listingImages[0];
}
// Find cover image
}
}
所以当我执行isset($this->listingImages) 时,它总是会返回true,因为如果它尚未加载,它将去加载图像,但在这种情况下,这不是我想要做的。该示例是基本的,但我想做一些额外的过滤,所以我宁愿只做一个自定义选择。我如何才能真正检查是否已完成急切/延迟加载?
【问题讨论】:
标签: php yii2 lazy-loading