nonetallt/laravel-autoschema

生成描述您所有Laravel应用程序模型及其属性的Markdown文件。

1.0.0 2018-01-29 23:42 UTC

This package is not auto-updated.

Last update: 2024-09-29 04:37:13 UTC


README

生成描述您所有Laravel应用程序模型及其属性的Markdown文件。该架构可作为参考,供前端和后端开发者跟踪给定模型应该或不应存在的属性。

Example output

安装

composer require nonetallt/laravel-autoschema --dev

基本用法

php artisan schema:create

属性

属性

属性名称(通常为列名)。

计算属性

具有定义了访问器(getXAttribute)但数据库中无列的属性被视为计算属性。

可赋值

属性是否可批量赋值。

关系

属性是否是描述关系的函数。

序列化

对象序列化(为数组或JSON)后属性是否存在。对于关系,n/a,因为在静态分析中无法确定对象是否加载了关系。对于前端开发者很有用,因为对象在响应中被序列化。

管理关系

遗憾的是,与其他属性不同,模型的关联无法仅通过方法签名或框架本身轻松区分。要列出模型中的关系,您需要在关系方法注释中使用@relation注解。

/**
* @relation
*/
public function addresses()
{
    return $this->hasMany('App\Address', 'address_list_name', 'name');
}

配置

发布配置文件

php artisan vendor:publish --provider="Nonetallt\LaravelAutoschema\AutoschemaServiceProvider"

可用选项

  • 输出路径
  • 模型目录
  • 模型命名空间
  • 是字符串
  • 否字符串
  • 打印表名