tonygeez/lazy-column-add-to-migration

Laravel包,通过Artisan命令向迁移中添加列。

v1.0.15 2024-07-05 03:41 UTC

This package is auto-updated.

Last update: 2024-09-05 04:00:53 UTC


README

Lazy Column Add to Migration 是一个简单的Artisan命令,用于Laravel轻松地向现有迁移中添加列。

这是我在最近的一次经历中得出的结果,当时我需要对项目表进行关键更改。当时,我唯一的选择是我带有SSH访问项目文件的iPhone。

这突显了Laravel原生Artisan命令对于此类任务的缺乏,这些命令不仅易于实现,而且简化了在有限环境和初学者中的开发过程。

安装

您可以通过Composer安装此包

composer require tonygeez/lazy-column-add-to-migration

用法

向表中添加列

此包的主要功能是通过简单的Artisan命令向现有表中添加新列。

您可以使用以下方式使用 table:add 命令

php artisan table:add {table?} {column?} [--type={type}] [--nullable] [--after={existing_column}] [--default={value}] [--foreign-model={model}]

命令参数

  • table: 将添加列的表名。如果未提供,则命令将提示输入。
  • column: 要添加的新列名。如果未提供,则命令将提示输入。
  • --type: 列的类型。支持类型包括 bigIntegerbooleandatedateTimedecimalenumfloatforeignIdidincrementsintegerjsonlongTextstringtexttimestampsunsignedInteger。如果未提供,则命令将提示输入。
  • --nullable: 使列可空。
  • --after: 指定新列将添加在现有列之后。
  • --default: 为列设置默认值。
  • --foreign-model: 指定外键关系模型类。与 foreignId 类型一起使用。

示例用法

users 表添加名为 new_column 的字符串列

php artisan table:add users new_column --type=string

使列可空并将它放置在 email 列之后

php artisan table:add users new_column --type=string --nullable --after=email

添加引用 projects 表的外键列

php artisan table:add tasks project_id --type=foreignId --foreign-model=App\\Models\\Project

添加枚举列

php artisan table:add users status --type=enum

命令将提示您输入枚举值。

交互模式

如果您在没有指定所有参数的情况下运行命令,它将进入交互模式,提示您输入必要的信息

php artisan table:add

这将引导您完成添加新列的过程,询问表名、列名、类型和其他相关细节。

列出表结构

如果您需要检查当前的表结构(例如,在向表中添加新列之前),您可以通过以下方式轻松获取它

php artisan table:list

或者

php artisan table:list {table}

贡献

欢迎贡献!请提交拉取请求或创建问题以讨论任何更改。

许可证

此包是开源软件,采用MIT许可证