lee-to/laravel-airtable

Laravel 的 AirTable API 客户端

v1.1 2020-07-24 09:27 UTC

This package is auto-updated.

Last update: 2024-08-29 05:19:06 UTC


README

Laravel 的 AirTable API 客户端。使用库 [AirTable PHP)(https://github.com/lee-to/php-airtable)

安装

可以使用 Composer 安装 AirTable Client Laravel。运行以下命令

composer require lee-to/laravel-airtable

发布提供者

php artisan vendor:publish --provider="AirTableLaravel\Providers\AirTableServiceProvider"

.env

AIRTABLE_TOKEN=
AIRTABLE_BASE=
AIRTABLE_TABLE=

config/app.php

添加别名

'aliases' => [
        ...
        
        'AirTable' => \AirTableLaravel\Facades\AirTableFacade::class,
    ],

添加提供者

'providers' => [

        ...

        AirTableLaravel\Providers\AirTableServiceProvider::class,
    ],

使用方法

AirTable 账户AirTable API 获取令牌和基础

导入。

use Airtable;

从该表获取记录

  • 列出表记录
Airtable::table('table_name')->get();

或使用默认表

Airtable::get();

或获取所有记录

Airtable::all();

从表中获取一个记录。

Airtable::table('table_name')->find('ID');

或使用默认表

Airtable::find('ID');

过滤记录

  • 第一个参数是列名
  • 第二个参数是操作符或值,如果您想使用等号 '=' 作为操作符。
  • 第三个参数是过滤值的值
Airtable::table('table_name')->where("column", "operator", "value")->get();

排序记录

  • 第一个参数是列名
  • 第二个参数是方向。
Airtable::table('table_name')->orderBy("column", "direction")->get();

字段

  • 只包含在此列表中命名的字段的字段数据将包含在结果中。如果您不需要每个字段,您可以使用此参数来减少传输的数据量
Airtable::table('table_name')->fields(["Column1", "Column2"])->get();

Airtable::all(["Column1", "Column2"]);

最大记录数

  • 请求中返回的记录的最大总数。如果此值大于 pageSize(默认为 100),您可能需要加载多个页面才能达到此总数。
Airtable::table('table_name')->limit(5)->get();

更新

  • 更新一个记录
Airtable::table('table_name')->update('ID', ["Column1" => "Value"]);

foreach(Airtable::get() as $record) {
    $record->update(["Column1" => "Value"]);
}

更新或创建

  • 更新或创建记录
Airtable::table('table_name')->updateOrCreate('ID', ["Column1" => "Value"]);

创建

  • 创建新记录
Airtable::table('table_name')->create(["Column1" => "Value"]);

或创建

  • 创建新记录或找到第一个匹配项
Airtable::table('table_name')->firstOrCreate(["Column1" => "Value"]);

删除

  • 删除一个记录
Airtable::table('table_name')->delete('ID');

foreach(Airtable::table('table_name')->get() as $record) {
    $deleted = $record->delete();
    
    $deleted->isDeleted(); // Check is deleted or not
}

获取记录的字段

foreach(Airtable::table('table_name')->get() as $record) {
    $record->getId(); // ID 
    
    $record->COLUMN1; // Any fields in table 
}

贡献

请参阅 CONTRIBUTING 了解详细信息。

鸣谢

许可协议

MIT 许可协议 (MIT)。请参阅 许可文件 了解更多信息。

安全

如果您发现了一个安全问题,请直接联系维护者 leetodev@ya.ru