campaigningbureau / cf-repository-generator
生成必要的存储库、工厂和模型,以便在 Laravel 中访问新的 Contentful 内容类型
v10.0
2023-12-04 14:46 UTC
Requires
- php: ^7.3||^8.0
- campaigningbureau/laravel-static-image-cache: ^10.0
- contentful/laravel: ^9.0
- davidbadura/faker-markdown-generator: ^1.1
- fakerphp/faker: ^1.23
- illuminate/support: ^8.0||^9.0||^10.0
- nesbot/carbon: ^2.72
README
Laravel 7 Contentful 存储库生成器。
生成合同、Contentful 存储库、模型、工厂和缓存存储库,包含在 Contentful 模型中定义的字段。(https://www.contentful.com/)
如果这些文件中的任何一个已经存在,可以选择保留或覆盖。
用法
步骤 1:通过 Composer 安装
composer require campaigningbureau/cf-repository-generator
支持版本
步骤 2:注册服务提供者
将服务提供者添加到 config/app.php
。
/* * Package Service Providers... */ CampaigningBureau\CfRepositoryGenerator\CfRepositoryGeneratorServiceProvider::class,
步骤 3:发布和编辑配置文件
$ php artisan vendor:publish --provider="CampaigningBureau\CfRepositoryGenerator\CfRepositoryGeneratorServiceProvider"
步骤 4:创建存储库
php artisan make:cf-repository
此命令将加载配置内容空间中定义的所有内容类型,并提供一种轻松生成相关类的方法。
生成的文件还包含模拟存储库,可以用作实际 Contentful 数据的替代(例如,在开发期间没有数据可用时)。如果未使用,则可以删除整个目录(默认为 FakeData
)。
配置
发布的配置文件 config/cf-repository-generator.php
包含在 app
目录内生成的文件路径。为了符合 PSR-4 自动加载,文件的命名空间由这些路径生成。
这是默认路径,如果没有发布配置文件,或者配置键不存在时将使用这些路径
return [ 'paths' => [ 'contracts' => 'Repositories/Contracts/', 'repositories' => 'Repositories/', 'caching-repositories' => 'Repositories/Caching/', 'models' => 'Models/', 'factories' => 'Factories/', 'fake-data' => 'FakeData/', ], ];
contentful_delivery_space
和contentful_delivery_token
字段需要使用从 Contentful 获取的 API 密钥和空间 ID 设置。- 默认情况下,它们使用 .env 变量
CONTENTFUL_DELIVERY_SPACE
和CONTENTFUL_DELIVERY_TOKEN
设置。 CONTENTFUL_ENVIRONMENT_ID
定义要使用的 Contentful 环境(默认为master
)