csoellinger/silverstripe-model-annotations-task

一个用于生成数据对象模型注解的 SilverStripe 任务,包括定义的数据库字段以及扩展中定义的字段。

安装: 20

依赖: 0

建议: 0

安全: 0

星级: 3

关注者: 1

分支: 1

开放问题: 0

类型:silverstripe-vendormodule

v1.0.1 2022-04-22 12:39 UTC

This package is auto-updated.

Last update: 2024-09-23 15:51:18 UTC


README

Build Status codecov Scrutinizer Code Quality

此模块添加了一个开发任务,用于生成数据对象模型的注解。问题是如果你经常使用 silver stripe 模型,你会知道没有任何 IDE 可以处理数据库字段作为属性和/或集合作为方法。因此,我创建了此任务,它使用模型自身及其所有扩展的现有配置来完成我的模型。处理的配置:db、has_one、has_many、many_many、many_many(through)、belongs_to、belongs_many_many。

  1. 需求
  2. 安装
  3. 用法
    1. 网络
    2. 终端
    3. 可选参数
  4. 选项
    1. dryRun (默认:true)
    2. quiet (默认:false)
    3. createBackupFile (默认:false)
    4. addUseStatements (默认:false)
  5. 示例
  6. 文档
  7. 许可证
  8. 维护者
  9. 错误跟踪器
  10. 开发和贡献

需求

  • PHP 7.4 - PHP 8.0
  • PHP-AST 扩展
  • PHP-BCMATH 扩展
  • SilverStripe ^4.10

安装

composer require --dev csoellinger/silverstripe-model-annotations-task

用法

运行 dev 构建,以加载任务,然后您可以在浏览器或 CLI 中执行它。

网络

https:///tasks/ModelAnnotationsTask

终端

vendor/bin/sake dev/tasks/ModelAnnotationsTask

可选参数

  • dryRun=0/1
  • quiet=0/1
  • createBackupFile=0/1
  • addUseStatements=0/1

请参阅下面的选项部分以获取有关参数的更多信息。

选项

以上所有可选参数都可以在 ModelAnnotationsTask 中作为 silverstripe 配置设置。唯一的区别是配置设置为布尔变量,而不是整数。默认情况下,dryRun 设置为 true。如果您想使用此任务写入文件,则需要设置配置或设置参数为 false。

dryRun (默认:true)

仅打印浏览器或终端中的更改,而不写入任何文件。

quiet (默认:false)

无输出。

createBackupFile (默认:false)

在写入模型之前创建一个备份文件。仅当 dryRun 为 false 时。

addUseStatements (默认:false)

收集未声明为 use 语句的数据类型,并将它们添加到文件中。如果此配置为 true,它还会缩短数据类型。

示例

在这里,您可以看到使用任务后模型文件的外观。

您的输入

<?php

class Player extends DataObject
{
    private static $db = [
        'Name' => 'Varchar(255)',
    ];
    private static $has_many = [
        'Jobs' => 'Job',
    ];
}

任务将写入此文件

<?php

/**
 * @property string $Name Name...
 *
 * @method HasManyList Jobs() Get jobs
 */
class Player extends DataObject
{
    private static $db = [
        'Name' => 'Varchar(255)',
    ];
    private static $has_many = [
        'Jobs' => 'Job',
    ];
}

文档

许可证

查看 许可证

维护者

错误跟踪器

错误在存储库的问题部分跟踪。在提交问题之前,请先阅读现有问题,以确保您的独特性。

如果问题看起来像是一个新的错误

  • 创建一个新的问题
  • 描述重现您的问题所需的步骤,以及预期的结果。单元测试、屏幕截图和屏幕录像在这里可能会有所帮助。
  • 尽可能详细地描述您的环境:SilverStripe 版本、浏览器、PHP 版本、操作系统、安装的任何 SilverStripe 模块。

请直接向模块维护者报告安全问题。请不要在错误跟踪器中提交安全问题。

开发和贡献

如果您想为此模块做出贡献,请确保您发起一个拉取请求,并与模块维护者讨论。