我想检索插入到表中的最后一个文件。我知道方法first()存在,并为您提供表中的第一个文件,但我不知道如何获得最后一个插入。
当前回答
不要使用Model::latest()->first();因为如果你的集合有多行创建在同一时间戳(这将发生在你使用数据库事务DB::beginTransaction();和DB::commit())则返回集合的第一行,显然这不是最后一行。
假设id为11、12、13的行是使用transaction创建的,那么它们都将具有相同的时间戳,因此您将通过Model::latest()->first();id: 11的行。
其他回答
使用模型::(user_id, user_id美元)- >最新()- >先()- > (); 它将只返回一条记录,如果没有找到,它将返回null。 希望这能有所帮助。
Laravel集合有方法
Model::all() -> last(); // last element
Model::all() -> last() -> pluck('name'); // extract value from name field.
这是最好的办法。
试试这个:
Model::latest()->get();
不要使用Model::latest()->first();因为如果你的集合有多行创建在同一时间戳(这将发生在你使用数据库事务DB::beginTransaction();和DB::commit())则返回集合的第一行,显然这不是最后一行。
假设id为11、12、13的行是使用transaction创建的,那么它们都将具有相同的时间戳,因此您将通过Model::latest()->first();id: 11的行。
请注意,如果您正在寻找顺序的或事件/有序的记录,last()、latest()是不确定的。最后/最近的记录可以具有完全相同的created_at时间戳,而您返回的是哪一个不是确定的。所以做orderBy(id|foo)->first()。欢迎其他关于如何确定的想法/建议。
推荐文章
- 选择“表”中的“最后一行”
- Laravel:获取基本URL
- 迁移:不能添加外键约束
- Visual Studio代码PHP Intelephense保持显示不必要的错误
- 如何在laravel雄辩中选择具体的栏目
- PSR-0和PSR-4有什么区别?
- 在Laravel安全地移除迁移
- Laravel 4:如何使用雄辩的ORM进行“排序”
- 禁用Laravel的雄辩时间戳
- 如何在PATH中放置~/.composer/vendor/bin目录?
- 添加自定义属性Laravel / Eloquent模型加载?
- Laravel Eloquent:排序所有结果()
- laravel中出现“请提供有效的缓存路径”错误
- Laravel:如何获取当前路由名称?(v5…v7)
- Laravel 5 -从URL中删除公共