Laravel 8.17 发布

Laravel

昨天 Laravel 团队发布了 8.17 版本,引入了事务感知代码执行,在 request 对象中加入新的 dump() 和 dd() 方法,以及 8.x 分支的最新更改:

通过事务感知执行代码

Mohamed Said 贡献了一个事务管理器类,用于记录事务、提交和回滚。该功能包括一个事务感知的处理程序,该处理程序在事务提交后(且仅在事务提交后)执行代码

DB::afterCommit(function () {
    // 仅在提交事务后执行。
    // 如果事务回滚则丢弃。
    Mail::send(...);
});

感知事务的管理器为之后 listeners、jobs 、mail 等在默认情况下使用感知事务打下了基础。

在 Request 对象中加入dump() 和 dd() 方法

Trajche Nakov 在 Illuminate Request 类中贡献了 dump() 和 dd() 方法:

$request->dd();

// 只打印数组中的key
$request->dd(['name', 'age']);

// 将它们作为单独的参数传递
$request->dd('name', 'age');

// 在运行验证之前快速检查请求参数
$request->dd()->validate([
    'name' => 'required'
]);

发行说明

您可以在GitHub上看到新功能和更新的完整列表以及8.16.0 and 8.17.0 之间的区别 。 以下发行说明来自 changelog

v8.17.0

新增

修复

  • 修复文字为0的多态morphMaps的问题 (#35364)
  • 修复 withAggregate 方法中的自关联问题 (#35392aec5cca#35394)
  • 修复了在 PendingCommand 中使用 PHP_EOL 代替\ n (#35409)
  • 修复 Symfony/Mime 更新后 image/jpeg 格式的图像验证问题 (#35419)
  • 修复了无法自定义投射到对象的情况 (#35420)
  • 修复 Illuminate\Collections\Collection::sortBy() (307f6fb)
  • 使用 doubleiMonthly() 指定时间时,请勿使用分钟和小时覆盖 (#35436)

更改项

  • 使 DownCommand 重启后可用于渲染视图 (#35357b1ee97e)
  • 设置云驱动程序的默认值 (0bb7fe4)
  • 更新 Tailwind 分页焦点样式 (#35365)
  • Redis:允许传递连接名称 (#35402)
  • 将 Wormhole 修改成使用 Date Factory (#35421)
本文中的所有译文仅用于学习和交流目的,转载请务必注明文章译者、出处、和本文链接
我们的翻译工作遵照 CC 协议,如果我们的工作有侵犯到您的权益,请及时联系我们。

原文地址:https://laravel-news.com/laravel-8-17-0

译文地址:https://learnku.com/laravel/t/53055

本文为协同翻译文章,如您发现瑕疵请点击「改进」按钮提交优化建议
《L04 微信小程序从零到发布》
从小程序个人账户申请开始,带你一步步进行开发一个微信小程序,直到提交微信控制台上线发布。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 1

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!