本文整理匯總了PHP中yii\db\ActiveQuery::with方法的典型用法代碼示例。如果您正苦於以下問題:PHP ActiveQuery::with方法的具體用法?PHP ActiveQuery::with怎麽用?PHP ActiveQuery::with使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在類yii\db\ActiveQuery
的用法示例。
在下文中一共展示了ActiveQuery::with方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。
示例1: _run
protected function _run()
{
$key = $this->getCacheKey() . 'run';
$dependency = new TagDependency(['tags' => [$this->className() . (string) $this->namespace, (new Tree())->getTableCacheTag()]]);
$result = \Yii::$app->cache->get($key);
if ($result === false || $this->enabledRunCache == Cms::BOOL_N) {
$this->activeQuery = Tree::find();
if ($this->treePid) {
$this->activeQuery->andWhere(['pid' => $this->treePid]);
}
if ($this->level) {
$this->activeQuery->andWhere(['level' => $this->level]);
}
if ($this->active) {
$this->activeQuery->andWhere(['active' => $this->active]);
}
if ($this->site_codes) {
$this->activeQuery->andWhere(['site_code' => $this->site_codes]);
}
if ($this->enabledCurrentSite == Cms::BOOL_Y && ($currentSite = \Yii::$app->cms->site)) {
$this->activeQuery->andWhere(['site_code' => $currentSite->code]);
}
if ($this->orderBy) {
$this->activeQuery->orderBy([$this->orderBy => (int) $this->order]);
}
if ($this->tree_type_ids) {
$this->activeQuery->andWhere(['tree_type_id' => $this->tree_type_ids]);
}
/**
*
*/
if ($this->with) {
$this->activeQuery->with($this->with);
}
if ($this->activeQueryCallback && is_callable($this->activeQueryCallback)) {
$callback = $this->activeQueryCallback;
$callback($this->activeQuery);
}
$result = parent::_run();
\Yii::$app->cache->set($key, $result, (int) $this->runCacheDuration, $dependency);
}
return $result;
}