devswebdev / laravel-airtable
Laravel Airtable SDK
v0.15
2020-07-07 15:32 UTC
Requires
- php: ^7.1
- guzzlehttp/guzzle: ~6.0
- illuminate/support: 5.7.* || 5.8.* || 6.* || 7.*
- symfony/dotenv: ^4.2 || ^5.1
Requires (Dev)
- mockery/mockery: ^1.0
- orchestra/testbench: 3.7.*
- phpunit/phpunit: ^7.0
This package is not auto-updated.
Last update: 2024-09-26 19:43:09 UTC
README
与Airtable交互的简单方法。
安装
您可以通过composer安装此包
composer require tapp/laravel-airtable
发布配置文件
php artisan vendor:publish --provider="Tapp\Airtable\AirtableServiceProvider"
在.env中定义airtables账户信息
AIRTABLE_KEY= AIRTABLE_BASE= AIRTABLE_TABLE= AIRTABLE_TYPECAST=false
AIRTABLE_KEY
可以在此处获取:https://airtable.com/accountAIRTABLE_BASE
可以在以下位置找到:https://airtable.com/api,选择基础然后从URL复制:https://airtable.com/[Base Is Here]/api/docs#curl/introduction
AIRTABLE_TABLE
可以在相应基础的帮助文档中找到,这不区分大小写。例如:tasks
AIRTABLE_TYPECAST
设置为true以允许自动转换。
示例配置
如果您需要支持多个表,请将它们添加到config/airtable.php中的tables配置
...
'tables' => [
'default' => [
'name' => env('AIRTABLE_TABLE', 'Main'),
],
'companies' => [
'name' => env('AIRTABLE_COMPANY_TABLE', 'Companies'),
],
...
],
...
用法
在您的类中导入外观。
use Airtable;
从该表中获取记录
- 这将仅返回前100条记录,因为Airtable页面大小限制
Airtable::table('tasks')->get();
从该表中获取所有记录。
- 这将通过发送多个请求直到获取所有记录来获取所有记录。
- 可选参数是请求之间的延迟(以微秒为单位),因为API对每个基础每秒限制5个请求,默认为0.2秒。
Airtable::table('tasks')->all(); Airtable::table('tasks')->all(500000); // 0.5 seconds
从默认表中获取一个记录。
Airtable::find('id_string');
筛选记录
- 第一个参数是列名
- 第二个参数是运算符或您想使用'='作为运算符的值。
- 第三个参数是筛选器的值
Airtable::where('id', '5')->get(); Airtable::where('id', '>', '5')->get();
第一个或创建
- 第一个参数用于查找现有
- 第二个参数是在没有找到结果并创建时保存的额外数据(如果项目已存在则不会保存使用)
Airtable::firstOrCreate(['name' => 'myName'], ['field' => 'myField']);
更新或创建
- 第一个参数用于查找现有
- 第二个参数是在创建或更新时保存的额外数据
Airtable::updateOrCreate(['name' => 'myName'], ['field' => 'myField']); Airtable::table('companies')->firstOrCreate(['Company Name' => $team->name]);
更新
- 第一个参数将是id
- 第二个参数是包含更新字段的整个记录
注意:更新是破坏性的,如果没有提供值,则会清除所有未指定的单元格值。请使用PATCH更新指定的字段
Airtable::table('companies')->update('rec5N7fr8GhDtdNxx', [ 'name' => 'Google', 'country' => 'US']);
修补程序
- 第一个参数将是id
- 第二个参数是您想要更新的字段
Airtable::table('companies')->patch('rec5N7fr8GhDtdNxx', ['country' => 'US']);
测试
composer test
更新日志
有关最近更改的更多信息,请参阅CHANGELOG
贡献
有关详细信息,请参阅CONTRIBUTING
安全
如果您发现任何安全相关的问题,请通过电子邮件steve@tappnetwork.com联系,而不是使用问题跟踪器。
鸣谢
许可
MIT许可(MIT)。有关更多信息,请参阅许可文件
Laravel Package Boilerplate
此包是使用Laravel Package Boilerplate生成的。