Laravel Playwright - 快速使用 Playwright 启用测试
Laravel Playwright 包提供了开始使用 Playwright 快速测试 Laravel 应用所需的样板。此包将帮助你安装所有必要的文件,提供测试所需的 Laravel 特定助手,并为你提供一个示例规范来演示如何使用 Playwright 编写端到端测试:test('Can create a new user and log them in',...
Laravel 动态关联加载
Laravel 的 loadMissing 方法提供了一种灵活的方式,对现有模型或集合进行预加载。该方式避免了 N+1 的查询问题,同时允许你只在需要时加载关联。当使用可选的内容或仪表板构建 API 时,此功能尤其有价值,因为不同的部分需要不同的关联数据。$post->loadMissing(['comments', 'author']); ...
[Laravel 扩展包]Laravel Rewind - Eloquent 的版本控制包
Laravel Rewind 是 Jared Cannon 创建的为 Eloquent 模型提供的一个强大而高效的版本控制包。此包存储模型数据的部分差异和完整快照的组合。Rewind 将自动确定当前版本、可用快照和目标之间的最短路径:
Laravel 使用 whereRelation 进行 Eloquent 关联查询
Laravel 的 whereRelation 方法简化了基于关联属性过滤模型的处理。这个优雅的方式代替复杂的子查询,加入了更具可读性以及更可维护的语法。在电子商务平台、内容管理系统或任何模型相互连接且基于相关数据进行过滤至关重要的应用中构建复杂过滤器时,此功能特别有价值。Post::whereRelation('comments', 'is_approve...
Laravel 12 升级指南
从 11.x 升级到 12.0 预计升级时间:5 分钟 更新依赖影响可能性:高 应用的 composer.json 文件中更新如下依赖:laravel/framework 更新到 ^12.0 Carbon 3 影响可能性:ddi4Carbon 2.x 的支持已经移除。所有 Laravel 12 应用现在要求使用 Carbon 3.x。更新 Laravel Insta...
[Laravel 扩展包]Laravel 集成 Grok AI
Grok AI 包将 Grok AI 无缝集成到 Larave 应用中。利用强大的 AI 模型进行聊天、自动化和 NLP,同时保持 Laravel 的表达简单性。use GrokPHP\Laravel\Facades\GrokAI; use GrokPHP\Client\Config\ChatOptions; use GrokPHP\Client\Enu...
使用 Typesense 改进 Laravel 应用搜索的五个实用技巧
Typesense 正在搜索领域掀起波澜。自从 Typesense 被列为 Laravel Scout 的官方支持驱动程序以来,它很快成为希望将全文搜索集成到 Laravel Eloquent 模型中的开发人员的首选。Typesense 是什么?它是一个快速、开源和自托管的搜索引擎,旨在为 Algolia 和 Meilisearch 等流行解决方案提供强大的...
使用 Laravel 的设备退出功能管理多设备会话
Laravel 通过 Auth::logoutOtherDevices() 提供了一个强大的安全功能,使用户能够在除当前设备之外的所有设备上终止会话。此功能对于在处理敏感数据的应用中维护帐户安全特别有价值。你可以实现此功能以采取主动安全措施,例如应对可疑活动:public function secureSessions(Request $request) ...
Laravel 中重定向到控制器操作(actions)
在构建 web 应用时,在应用的不同部分之间重定向用户是一项常见要求。虽然 Laravel 提供了几种处理重定向的方法(比如使用 route()->name() 的命名路由),但 action() 方法提供了一种专注于控制器操作的替代方法,为某些场景提供了独特的优势。为什么要考虑 Action 重定向?类型安全:IDE 自动补全和重构支持显式依赖关系:...