我使用项目中的DataTables插件在网格中显示用户信息的一些字段是使用Yii2开发的。
我有这个代码来获取每个用户的最后一次访问:
$lastDate = SeenLog::find()->where(['user_id' => $this->id])
->orderBy(['id' => SORT_DESC])
->one()->visit_date;
但我收到了这个错误:
DataTables warning: table id=w0 - Trying to get property of non-object and nothing shows in grid.
这似乎是因为表中的某些用户没有记录。
如何处理此错误?
谢谢。
答案 0 :(得分:4)
您需要先检查是否已从数据库中提取日志。
$log = SeenLog::find()->where(['user_id' => $this->id])
->orderBy(['id' => SORT_DESC])
->one();
$lastDate = $log ? $log->visit_date : null;