本文整理汇总了PHP中yii\db\ActiveQuery::orderBy方法的典型用法代码示例。如果您正苦于以下问题:PHP ActiveQuery::orderBy方法的具体用法?PHP ActiveQuery::orderBy怎么用?PHP ActiveQuery::orderBy使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类yii\db\ActiveQuery
的用法示例。
在下文中一共展示了ActiveQuery::orderBy方法的6个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: _run
protected function _run()
{
$key = $this->getCacheKey() . 'run';
$dependency = new TagDependency(['tags' => [$this->className() . (string) $this->namespace, (new CmsSite())->getTableCacheTag()]]);
$result = \Yii::$app->cache->get($key);
if ($result === false || $this->enabledRunCache == Cms::BOOL_N) {
$this->activeQuery = CmsSite::find();
if ($this->active == Cms::BOOL_Y) {
$this->activeQuery->active();
} else {
if ($this->active == Cms::BOOL_N) {
$this->activeQuery->active(false);
}
}
if ($this->limit) {
$this->activeQuery->limit($limit);
}
if ($this->orderBy) {
$this->activeQuery->orderBy([$this->orderBy => (int) $this->order]);
}
$result = parent::_run();
\Yii::$app->cache->set($key, $result, (int) $this->runCacheDuration, $dependency);
}
return $result;
}
示例2: sort
/**
* @param int $sort
* @return $this
*/
public function sort($sort = SORT_DESC)
{
/** @var ISortableActiveRecord $model */
$model = new $this->owner->modelClass();
$behavior = $model->getSortBehavior();
$this->owner->orderBy([$behavior->attributeName => $sort]);
return $this;
}
示例3: applyOrder
/**
* Apply possible answers order to query
* @param ActiveQuery $query
* @param $order
* @return string
*/
public static function applyOrder(ActiveQuery $query, $order)
{
switch ($order) {
case 'oldest':
$query->orderBy('created_at DESC');
break;
case 'active':
$query->orderBy('created_at ASC');
break;
case 'votes':
default:
$query->orderBy('votes DESC');
break;
}
return $order;
}
示例4: setupCriteria
public function setupCriteria()
{
$this->activeQuery->joinWith('content');
$this->activeQuery->joinWith('content.createdBy');
$this->activeQuery->joinWith('content.contentContainer');
$this->activeQuery->limit($this->limit);
$this->activeQuery->andWhere(['user.status' => User::STATUS_ENABLED]);
/**
* Handle Stream Mode (Normal Stream or Activity Stream)
*/
if ($this->mode == self::MODE_ACTIVITY) {
$this->activeQuery->andWhere(['content.object_model' => \humhub\modules\activity\models\Activity::className()]);
// Dont show own activities
if ($this->user !== null) {
$this->activeQuery->leftJoin('activity', 'content.object_id=activity.id AND content.object_model=:activityModel', ['activityModel' => \humhub\modules\activity\models\Activity::className()]);
$this->activeQuery->andWhere('content.created_by != :userId', array(':userId' => $this->user->id));
}
} else {
$this->activeQuery->andWhere(['!=', 'content.object_model', \humhub\modules\activity\models\Activity::className()]);
}
/**
* Setup Sorting
*/
if ($this->sort == self::SORT_UPDATED_AT) {
$this->activeQuery->orderBy('wall_entry.updated_at DESC');
if ($this->from != "") {
$this->activeQuery->andWhere("wall_entry.updated_at < (SELECT updated_at FROM wall_entry wd WHERE wd.id=" . $this->from . ")");
}
} else {
$this->activeQuery->orderBy('wall_entry.id DESC');
if ($this->from != "") {
$this->activeQuery->andWhere("wall_entry.id < " . $this->from);
}
}
}
示例5: _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;
}
示例6: getDataprovider
public function getDataprovider()
{
$query = new ActiveQuery($this::className());
if ($this->airport_id) {
$query->andWhere(['airport_id' => $this->airport_id]);
}
$query->andWhere(['isarrival' => $this->isarrival]);
$query->orderBy($this->isarrival == 1 ? "timeto" : "timefrom");
return new ActiveDataProvider(['query' => $query]);
}