Laravel 7 如何支持 PosgreSQL 范圍類型

Laravel 7  如何支持 PosgreSQL 范圍類型

由 @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 BelamovPostgresRangeRangesIntegerRange;  $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教程

? 版權聲明
THE END
喜歡就支持一下吧
點贊10 分享