Happy New Year!
文章分类: 编程
编程

Laravel 11:将模型强制转换(cast)移到方法中

57 2024-02-03 00:56:00

Laravel 10 中的模型强制转换(Model casts)是通过 $casts 数组属性定义的。而在 Laravel 11 中,你可以定义 casts()方法,这就打开了在内置 caster 中的静态方法、以及为自定义 casters 定义静态方法的可能:use App\Enums\UserOption; use Illuminate\Databas...

详情...
编程

[Laravel 扩展包]在 Laravel 中使用 Blade 视图生成 PDF

63 2024-02-02 00:59:00

由 Spatie 提供的 Laravel PDF 包,提供了一个在 Laravel 中创建 PDF 的简单方式。它使用 Blade 视图渲染 HTML 并且使用 Browsershot 从视图中创建 PDF。这使其可以使用现代 CSS 工具(如 Grid、Flexbox)、现代 CSS 框架(如 Tailwind),甚至可以使用 JavaScript 代码(...

详情...
编程

设计模式之责任链(Chain of Responsibility)模式

52 2024-02-01 23:02:00

责任链(Chain of Responsibility )模式是一种行为设计模式,允许沿着处理程序链传递请求。收到请求后,每个处理程序决定处理该请求或将其传递给链中的下一个处理程序。问题描述假设你正在开发一个在线订单系统。您希望限制对系统的访问,以便只有经过身份验证的用户才能创建订单。此外,具有...

详情...
编程

Tailwind CSS v3.4 支持动态视口单位(dvh,lvh,svh)、支持 :has()、支持子网格等功能。

52 2024-02-01 11:33:00

Tailwind v3.4 已发布,支持动态 viewport 单位、支持 :has()、子网格等!在最近的发布公告中,Adam Wathan 提到许多与构建新的 Catalyst UI 套件直接相关的功能:

详情...
编程

DevDB - 在 VS Code 内访问数据库!

68 2024-02-01 10:50:00

DevDb 是一个轻量级 VS Code 扩展,提供了数据库 GUI 客户端,并且在编辑器中直接显示数据以及 Schema 详情:该软件包支持 SQLite、MySQL 和 PostgreSQL,带有零配置选项,使得该扩展可以自动检测使用的数据库。零配置选项很有用,因为你可以通过项目的 .env 文件配置数据库,而且 DevDb 自动知晓如何连接...

详情...
编程

设计模式之工厂方法(Factory Method)

85 2024-01-31 03:40:00

工厂方法是一种创建型设计模式,它为在超类中创建对象提供了一个接口,但允许子类更改将要创建的对象的类型。问题描述想象一下,你正在创建一个物流管理应用。你的应用程序的第一个版本只能处理卡车运输,所以你的大部分代码都在卡车类(Truck)中。过了一段时间,你的应用程序变得非常受欢迎。每天,您都会收到数十个来自海运公司的请求,要求将海运物流纳入...

详情...
编程

Filament v3.2 介绍

72 2024-01-30 23:55:00

Filament v3.2 已经发布了!这个版本包含了一系列非常令人兴奋的更新,所以让我们直接进入并看看吧!和往常一样,如果你喜欢直接在 Github 上阅读有关更改的信息,请查看此处的 v3.2 更改日志。CSV/Excel 导出(Export) Action在 Filament v3.1中,引入了使用 CSV 导入大量数据的功能。从那时起,最常见的要求的...

详情...
编程

设计模式之原型(Prototype)模式

66 2024-01-30 01:12:00

又称: 克隆模式(Clone)。原型模式(Prototype)是创建型设计模式,它允许克隆对象,甚至是复杂的对象,而不必耦合到它们的特定类。所有原型类都应该有一个公共接口,即使对象的具体类是未知的,也可以复制对象。原型对象可以生成完整的副本,因为同一类的对象可以访问彼此的私有字段。

详情...
编程

设计模式之代理(Proxy)模式

70 2024-01-29 01:12:00

代理模式(Proxy)是一种结构型设计模式,允许你提供为另一个对象提供替代或占位符。代理控制对原始对象的访问,允许你在请求到达原始对象之前或之后执行某些操作。问题描述为什么要控制对对象的访问?这里有一个例子:你有一个巨大的对象,它消耗了大量的系统资源。你有时需要它,但并不总是如此。你可以实现惰性初始化:只在实际需要时创建此对象。对象的所有客户端都需要执行...

详情...
编程

设计模式之桥接(Bridge)模式

79 2024-01-28 02:33:00

意图桥接模式(Bridge)是一种结构型设计模式,可以将一个大型类或一组密切相关的类拆分为两个独立的层次结构——抽象和实现——它们可以相互独立地开发。问题描述抽象?实现?听起来很吓人?请保持冷静,我们来思考一个简单的示例。假设你有一个几何形状 shape 类,它有一对子类:Circle 和 Square。你想扩展这个类层次结构以合并颜色,所以你计划创建 Re...

详情...