wearejust/kirby-sheets

Kirby 插件,用于将数据写入 Google Sheets

0.5 2020-02-07 11:06 UTC

This package is auto-updated.

Last update: 2024-09-07 21:33:29 UTC


README

通常,Kirby 不提供将数据保存到数据库的方式。您可以使用 DB 驱动程序来实现这一点。问题是,Kirby 控制面板没有提供一种简单的方式来使这些数据可查看或可导出。

本包专注于将数据保存到外部系统,即 Google Sheets。

安装

您可以通过 composer 安装此包

composer require wearejust/kirby-sheets

用法

您可以使用以下代码将数据保存到 Google Sheets。

use Wearejust\KirbySheets\Connector;

$connector = new Connector();
$spreadsheetId = ID_OF_THE_GOOGLE_SPREADSHEET
$sheetName = NAME_OF_THE_TAB_IN_THE_GOOGLE_SPREADSHEET
$data = ['first_name' => 'Foo', 'last_name' => 'Bar'];

$connector->append($spreadsheetId, $sheetName, $data);

首先创建一个 Google Secret 认证文件非常重要。此文件非常重要,因为它设置了一些权限信息。您可以使用以下指南创建您的认证文件 -> https://www.fillup.io/post/read-and-write-google-sheets-from-php/

在您的 Kirby config.php 文件中,您可以设置文件的路径

...
    'wearejust/kirby-sheets' => [
        'authentication_file' => __DIR__ . '/../../google.prod.json',
    ],
...

与 KirbyUniform 一起使用

大多数情况下,您可能会使用 Kirby Uniform。我们已经创建了一个自定义操作,如下面的代码所示

...
    if ($kirby->request()->is('POST')) {
        $sheetName = 'TAB X';
        $spreadsheetId = 'SPREADSHEETID_OF_GOOGLE'
        
        $form
            ->action(new SaveToGoogleSheetsAction($form, [
                'spreadsheetId' => $spreadsheetId,
                'name' => $sheetName,
                'exclude' => ['gdpr'], // You can use the exclude option to exclude keys from the form data
            ]));

        return Header::redirect('/thanks');
    }
...

许可证

MIT 许可证 (MIT)。