php-7 - CodeIgniter4 模型返回数据结果
问题描述
我开始涉足 CI4 的 rc... 试图成为游戏的领导者。我注意到模型被完全重写了。
通过他们的文档,我需要一些关于如何在 CI4 中启动等效数据库查询构建器的指导。
我能够利用 return $this->findAll() 等...但是,需要能够查询 w/复杂的连接,并且还能够返回单个记录等...
当尝试类似
return $this->orderBy('import_date', 'desc')
->findColumn('import_date')
->first();
但出现错误:
Call to a member function first() on array
任何帮助或指导表示赞赏。
解决方案
假设您有一个模型实例化为
$userModel = new \App\Models\UserModel;
现在您可以使用它来获得类似的查询构建器。
$builder = $userModel->builder();
使用此构建器查询任何内容,例如
$user = $builder->first();
来到你的错误。
return $this->orderBy('import_date', 'desc')
->findColumn('import_date');
findColumn
总是返回一个数组或 null。所以你不能用它作为对象。相反,您应该执行以下操作。
return $this->orderBy('import_date', 'desc')->first();
推荐阅读
- java - 如何仅在几个页面而不是整个应用程序中禁用电容器插件中的屏幕截图
- reactjs - 使用 MaterialUI 和 Typescript 在 React 中传递给 onKeyPressed 函数的事件的正确类型是什么?
- sql - 不同时间段不同用户的每日滚动计数
- r - R markdown 交叉引用
- python - 尝试使用熊猫中的解析函数将一列整数转换为日期
- r - 带有 PROJ 的 R 警告中的 spTransform()
- c# - 将字符串转换为双精度但缺少一个点
- reactjs - React Map Gl 在生产版本中找不到变量
- spring - Hibernate 从视图中获取数据的速度很慢,但相同的请求在 sql 中是即时的
- c# - 有没有办法在 html 标签内的 blazor 组件中执行代码?