我正在创建一个简单的生成器,帮助我在工作中使用几行简单的YAML代码来创建模型、控制器、视图、路由和迁移。
到目前为止,一切看起来都很好,但我遇到了一个问题,尽管进行了大量搜索,但仍然毫无头绪。
我的工具会生成一个迁移文件,问题在于迁移文件名必须遵循特定的规则,这样 php artisan migrate
命令才能检测到该文件并进行迁移。
文件名必须以年、月、日和数字开头,然后是迁移的描述。
例如:2014_10_12_000000_create_users_table.php
、2014_10_12_100000_create_password_resets_table.php
现在,在文件开头放置日期很容易,但如何遵循数字规则呢?
每个新的迁移文件数字都要增加一。
我该如何检测最后创建的文件,以确定其数字,并创建一个数字比上一个迁移文件更大的新迁移文件?
同时,我使用以下代码创建迁移文件名。
$migrationFileName = date('y').'_'.date('m').'_'.date('d').'_'.'create'.ucfirst($name).'Table';
但是命令php artisan migrate
仍然无法检测到要迁移的文件,因为缺少版本号。那么我该怎么做呢?