common-gateway / klanten-bundle
创建 symfony flex 插件的示例包
Requires
- php: >=7.4
- commongateway/corebundle: >=1.0.37
Requires (Dev)
- symfony/dependency-injection: ~3.4|~4.1|~5.0
- dev-main
- 0.1.13
- 0.1.12
- 0.1.11
- 0.1.10
- 0.1.9
- 0.1.8
- 0.1.7
- 0.1.6
- 0.1.5
- 0.1.4
- 0.1.3
- 0.1.2
- 0.1.1
- 0.1.0
- 0.0.35
- 0.0.34
- 0.0.33
- 0.0.32
- 0.0.31
- 0.0.30
- 0.0.29
- 0.0.28
- 0.0.27
- 0.0.26
- 0.0.25
- 0.0.24
- 0.0.23
- 0.0.22
- 0.0.21
- 0.0.20
- 0.0.19
- 0.0.18
- 0.0.17
- 0.0.16
- 0.0.15
- 0.0.14
- 0.0.13
- 0.0.12
- 0.0.11
- 0.0.10
- 0.0.9
- 0.0.8
- 0.0.7
- 0.0.6
- 0.0.5
- 0.0.4
- 0.0.3
- 0.0.2
- 0.0.1
- dev-fix/attribute-type
This package is auto-updated.
Last update: 2024-09-22 11:35:29 UTC
README
创建 php symfony flex 插件的示例仓库
使用此包
使用 common-gateway 管理用户界面安装
@todo!
使用 PHP 命令安装
要执行以下命令,您需要 Composer 或已安装 PHP 和 Composer 的 dockerized 安装。
您可以通过以下命令安装此插件: composer require common-gateway/pet-store-bundle:dev-main
或 dockerized: docker-compose exec php composer require common-gateway/pet-store-bundle:dev-main
在您的 composer.json 所在目录中。
如果您还想将模式作为实体安装,可以使用以下命令安装: php bin/console commongateway:install common-gateway/pet-store-bundle
或 dockerized: docker-compose exec php bin/console commongateway:install common-gateway/pet-store-bundle
创建自己的包
要求
- GitHub 账户或组织
- Packagist 账户
- Composer 或如果您项目是 dockerized, Docker Desktop
使用此模板
创建自己的 symfony 包。您可以复制此仓库以快速启动。
- 在 GitHub 上登录
- 使用 此模板
- 命名您的包(驼峰式命名)
- 点击绿色按钮
从模板创建仓库
- 更新文件名和命名空间以适应您的需求
- 打开 composer.json,并将其名称更改为适应您的需求。第一个词应该是命名空间,第二个是包名。检查自动加载字段是否已正确设置。注意:这是短横线命名法。也请参阅:命名您的包
- 打开 PetStoreBundle.php 并更改包名和命名空间。命名空间应与 composer.json 中的包名相同,但为驼峰式命名。因此,common-gateway/pet-store-bundle 变为 CommonGateway/KlantenBundle
- 相应地重命名 /Service 和 /ActionHandler(或如果未使用则删除)。
- 将 /DependencyInjection/PetStoreExtension.php 重命名为 BundleNameExtension.php
- 重命名 /Resources/config/services.yaml 命名空间
添加模式
如果您使用 common-gateway 与您的包一起使用,您可以添加自己的模式,它们将作为实体加载。这些实体将加载到数据库中,因此您可以处理自己的对象/数据。
这些模式是 json 模式。
您可以通过 /Schema 添加现有模式或创建自己的模式并添加它们。还有一个示例为 /Schema/example.json。
确保您的模式具有 version
属性(必需)以便您可以更新您的模式!还要确保它们具有唯一的 $id
,以便它们可以与其他模式关联。
所有必需属性
- 版本号可以从 '0.1.0' 开始。
- '$schema' (https://json-schema.fullstack.org.cn/draft/2020-12/schema)
- '$id' (https://opencatalogi.nl/example.schema.json)
- 'type' 必须是 'object'。
- 'properties' 必须是 schema 属性。
如果你的 schema 中没有所有必需的属性,网关将不会安装该 schema,并声明其为无效。
如果你已经添加了 schema,你也可以为它们添加对象/数据,在 /Data 中有一个你可以使用的示例。
上传到 packagist。
在我们能够使用我们的包和代码之前,我们必须将它在线上传到 packagist,这样我们才能使用 composer 进行安装。
- 上传到 packagist。
- 前往 Packagist
- 在顶部菜单栏中点击
提交
并粘贴你包的 GitHub 仓库链接,你 composer.json 中的名称将用作包名。 - 如果有效,请点击
提交
- 自动更新包。
- 前往你的 packagist 个人资料。
- 点击
显示 API 令牌
并复制。 - 前往你的新包的 GitHub 仓库。
- 前往你的仓库设置。
- 前往 webhooks,并点击
添加 webhook
- 作为有效负载 URL,设置 https://packagist.org.cn/api/github?username=yourPackagistUsername
- 保持 SSL 验证启用。
- 作为秘密,粘贴从 packagist 复制的 API 令牌。
- 设置事件为
仅推送事件
- 点击
添加 webhook
- 如果你推送了新代码,它现在将推送到 packagis。在 packagist 上,你不应该再看到自动更新警告。如果它还在,请检查你的 GitHub webhook 上的用户名和秘密是否设置正确。
使用你的代码。
要在你的库中使用代码,我们首先必须使用 composer 安装它。
注意:对于 docker,在所有命令前添加 docker-compose exec php
- 使用命令行导航到你的 composer.json 位于你想要使用此包的项目中。
- 执行
composer require {full package name}:dev-main
- Docker 用户:重新启动你的容器,以便 symfony 可以识别新 Bundle 的命名空间。
- 执行
- 打开你想要使用类的 PHP 文件。
- 添加正确的 use 语句(例如
use CommonGateway\PetStoreBundle\Service\PetStoreService;
) - 现在,你可以使用你的类了!
- 添加正确的 use 语句(例如
在通用网关中,如果你想通过事件和动作来使用你的代码,请确保动作对象的类设置为处理程序名称,包括命名空间。例如,如果我想使用 PetStoreService,我可以将 PetStoreHandler 设置为 CommonGateway\PetStoreBundle\ActionHandler\PetStoreHandler
。