由 @belamov 编写的 Posgresql 范围类型 软件包为 Postgres 数据库提供了范围类型支持:
Schema::create('table', function (Blueprint $table) { $table->id(); // ... $table->daterange('date_range'); $table->timestampRange('timestamp_range'); $table->floatRange('float_range'); // 对于 int4range $table->integerRange('integer_range'); // 对于 int8range $table->bigIntegerRange('integer_range'); // 您可以添加任何修改 // $table->daterange('date_range')->nullable(); // $table->daterange('date_range')->default('[2010-01-01,2010-01-02)'); });
扩展了 Laravel 的
PostgresGrammar
和PostgresConnection
类可为范围列提供流畅的API。支持以下 Postgres 范围类型:
daterange
、tsrange
、numrange
、intrange
和timerange
。许多方便使用的查询构建宏 (即
whereRangeContains($left,$right)
模型属性转换
此包提供的模型属性转换为使用模型实例上的范围提供了便利。 例如:
use Belamov\PostgresRange\Ranges\IntegerRange; $range = new IntegerRange(10, 20, '[', ')'); $range->from(); // 10 $range->to(); // 20 (string) $range; // [10,20) $range->forsql(); // '[10,20)'
您可以在 belamov/postgres-range 上了解有关此软件包的更多信息、完整的安装说明并在GitHub上查看源代码。 该软件包具有出色的博客文章,可让您快速了解 Postgres 范围类型中可用的强大功能:在Laravel 7 中使用Postgresql Ranges。
推荐教程:《Laravel教程》
原文地址:https://www.jb51.cc/laravel/1199385.html
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。