dataxlamsterdam / calendar-nova
为 Laravel Nova 提供的日历工具。
dev-main
2021-03-18 14:19 UTC
Requires
- php: >=7.1.0
- spatie/laravel-google-calendar: ^3.1.0
This package is auto-updated.
Last update: 2024-09-18 22:00:48 UTC
README
这是一个为 Laravel Nova 定制的包,允许您在日历中创建、更新和删除事件。它还支持 Google Calendar 集成。
屏幕截图
要求
- PHP >= 7.1
- 拥有 Laravel 应用程序并已安装 Laravel Nova
安装
通过 composer 安装包
composer require dataxlamsterdam/nova-calendar-tool
发布迁移
php artisan vendor:publish --provider='Dataxl\NovaCalendarTool\ToolServiceProvider' --tag="migrations"
运行迁移
php artisan migrate
发布配置(可选)
php artisan vendor:publish --provider='Dataxl\NovaCalendarTool\ToolServiceProvider' --tag="config"
在 NovaServiceProvider
的 tools
方法中注册工具
// app/Providers/NovaServiceProvider.php
// ...
public function tools()
{
return [
// ...
new \Dataxl\NovaCalendarTool\NovaCalendarTool,
];
}
Google Calendar 集成
这一步是可选的。如果您想将事件同步到 Google Calendar,您需要发布来自 spatie/laravel-google-calendar 包的配置文件
php artisan vendor:publish --provider="Spatie\GoogleCalendar\GoogleCalendarServiceProvider"
这将创建包含以下内容的 config/google-calendar.php
文件
<?php
return [
/*
* Path to the json file containing the credentials.
*/
'service_account_credentials_json' => storage_path('app/google-calendar/service-account-credentials.json'),
/*
* The id of the Google Calendar that will be used by default.
*/
'calendar_id' => env('GOOGLE_CALENDAR_ID'),
];
因此,接下来,您需要在 .env
文件中插入 GOOGLE_CALENDAR_ID=your_id
(位于 Google Calendar 设置页面),并将账户凭据添加到 storage/app/google-calendar/service-account-credentials.json
文件中(您可以从 Google API Console 获取它)。这两件事情都在这里进行了说明 这里。
Artisan 命令
将所有事件导出到 Google Calendar
php artisan nova-calendar:export
从 Google Calendar 导入所有事件
php artisan nova-calendar:import
致谢
许可
MIT 许可证(MIT)。有关更多信息,请参阅 LICENSE.md 文件。