common-gateway/bag-bundle

创建 symfony flex 插件包的示例包

安装: 0

依赖者: 0

建议者: 0

安全性: 0

星标: 0

关注者: 3

分支: 0

开放问题: 2

类型:symfony-bundle

0.0.4 2023-03-07 16:03 UTC

This package is auto-updated.

Last update: 2024-09-07 19:16:29 UTC


README

创建 php symfony flex 插件包的示例仓库

使用此包

使用 common-gateway 管理用户界面进行安装

@todo!

使用 php 命令进行安装

要执行以下命令,您需要 Composer 或一个已经安装了 php 和 composer 的 dockerized 安装。

您可以通过以下命令安装此插件:在您的 composer.json 所在目录中执行 composer require common-gateway/bag-bundle:dev-main 或 dockerized: docker-compose exec php composer require common-gateway/bag-bundle:dev-main

如果您还想将模式作为实体安装,可以使用以下命令安装: php bin/console commongateway:install common-gateway/bag-bundle 或 dockerized: docker-compose exec php bin/console commongateway:install common-gateway/bag-bundle

创建自己的包

要求

使用此模板

要创建自己的 symfony 包。您可以通过复制此仓库来快速开始。

  1. GitHub 上登录
  2. 使用 此模板
  3. 命名您的包(驼峰命名法)
  4. 点击绿色按钮 从模板创建仓库
  5. 根据需要更新文件名和命名空间
    • 打开 composer.json,并将其更改为适合您的名称。第一个单词应该是命名空间,第二个是您的包名。检查自动加载字段是否已正确设置。注意:这是中划线命名法。也请参阅:命名您的包
    • 打开 BAGBundle.php 并更改包名和命名空间。命名空间应与 composer.json 中的包名相同,但为驼峰命名法。因此 common-gateway/bag-bundle 变为 CommonGateway/BAGBundle
    • 相应地重命名 /Service 和 /ActionHandler(或如果未使用则删除)。
    • 将 /DependencyInjection/BAGExtension.php 重命名为 BundleNameExtension.php
    • 重命名 /Resources/config/services.yaml 命名空间
添加模式

如果您使用 common-gateway 使用您的包,您可以添加自己的模式,这些模式将作为实体加载。这些实体将加载到数据库中,这样您就可以处理自己的对象/数据。

这些模式是 json 模式

您可以通过添加现有的模式或创建自己的模式并将它们添加到 /Schema 中来添加模式。还有示例 /Schema/example.json。

请确保您的模式具有 version 属性(必需)以便您可以更新您的模式!还请确保它们具有唯一的 $id,以便它们可以与其他模式关联。

所有必需的属性包括

如果在您的模式中缺少所有必需的属性,网关将不会安装该模式,并声称它是无效的。

如果您已添加模式,您还可以为它们添加对象/数据,/Data中有一个您可以使用的示例。

上传到packagist

在我们可以使用我们的包和代码之前,我们必须将其在线上传到packagist,这样我们就可以使用composer安装。

  1. 上传到packagist
    • 访问 Packagist
    • 在顶部菜单栏中按提交,并粘贴您包的GitHub仓库链接,您composer.json中的名称将被用作包名。
    • 如果有效,请按提交
  2. 自动更新包
    • 访问您的 packagist资料
    • 显示API令牌并复制
    • 访问您新包的GitHub仓库
    • 访问您的仓库设置
    • 转到webhooks,并按添加webhook
    • 将Payload URL设置为 https://packagist.org.cn/api/github?username=yourPackagistUsername
    • 保持SSL验证启用
    • 作为密钥,粘贴从packagist复制的API令牌
    • 仅推送事件上设置事件
    • 添加webhook
    • 如果推送新代码,它现在将推送到packagis。在packagist上,您不应再看到自动更新警告。如果它仍然存在,请检查您的GitHub webhook上是否正确设置了用户名和密钥。

使用您的代码

要使用库中的代码,我们首先必须使用composer安装它。

注意:对于docker,在所有命令之前添加docker-compose exec php

  1. 使用命令行导航到您想使用此包的项目中composer.json所在的位置。
    • 执行composer require {full package name}:dev-main
    • Docker用户:重新启动容器,以便symfony可以识别新的Bundle命名空间
  2. 打开一个您想使用类的PHP文件。
    • 添加正确的use语句(例如 use CommonGateway\BAGBundle\Service\BAGBundleService;
    • 现在您可以使用您的类了!

在通用网关中,如果您想使用在由动作触发的动作时使用您的代码,请确保动作对象的类被设置为处理器名称,包括命名空间。例如,如果我想使用BAGBundleService,我可以设置BAGBundleHandler为CommonGateway\BAGBundle\ActionHandler\BAGBundleHandler