Activerecord Yii2仅显示附加时间小于当前时间的数据

Activerecord Yii2仅显示附加时间小于当前时间的数据,activerecord,yii2,Activerecord,Yii2,如何在yii2 Activerecord中根据比较选择要显示的数据?数据库中的我的数据记录包含列depTime。因此,我只想显示depTime小于当前时间的数据。 这是我在控制器中的函数 public function actionSelectedTeam($id) { $searchModel = new TeamSearch(); $dataProvider= $searchModel->search(Yii::$app->request->queryPar

如何在yii2 Activerecord中根据比较选择要显示的数据?数据库中的我的数据记录包含列
depTime
。因此,我只想显示
depTime
小于当前时间的数据。 这是我在控制器中的函数

public function actionSelectedTeam($id) {
    $searchModel = new TeamSearch();
    $dataProvider= $searchModel->search(Yii::$app->request->queryParams);
    $dataProvider->pagination = [
        'pageSize' => 5
    ];

    return $this->render('team-info', [
                'model' => $this->findModel($id),
                'dataProvider' => $dataProvider,
    ]);
}
还是有别的办法?我的意思是,在这个方法之外,可能是从模型中


谢谢。

您将始终显示比当前时间小的记录,而不是某些类型的预订,您将手动提供未来的日期/时间

您没有指定
depTime
列的类型,我假设您有一个
datetime
列,您可以使用
time()
now()
函数来实现这一点

在返回从当前时间减去
depTime
$dataProvider
之前,可以在搜索模型的
search()
方法中添加以下行,如果结果为正,则将包括记录

$query->andFilterWhere(['>', new Expression('time(now()) - time(depTime)'), 0]);

专栏的类型是什么?@MuhammadOmerAslam该专栏的类型是timeIt's work,谢谢。我在
search()
方法中添加了行代码,但我将操作符更改为
@Blackjack yes,它减去
当前时间-节省的时间
,如果结果是
<0
,则表示当前时间小于节省的时间