codeigniter 4迁移文件如果具有相同的后缀,则不工作?

b5lpy0ml  于 2022-12-07  发布在  其他
关注(0)|答案(1)|浏览(122)

我刚刚开始学习codeigniter 4。我正在尝试迁移我的数据库,但是当我尝试两次迁移同一个表时,它给出了错误Cannot declare class App\Database\Migrations\Barang, because the name is already in use
但是我的迁移文件没有一个与您在

下图中看到的文件名相同

2ekbmq32

2ekbmq321#

解释:

当您执行php spark make:migration barang时,CodeIgniter 4会在命名空间App\Database\Migrations下建立移转档案app/Database/Migrations/2022-03-22-135842_Barang.php,其类别名称为Barang
当您第二次或第三次运行php spark make:migration barang时,CodeIgniter 4将执行与上面指定的相同的过程,只是各个迁移文件将具有不同的文件名,更具体地说,不同的“时间戳前缀”。
当您现在运行php spark migrate来启动迁移过程时,CodeIgniter 4发现在同一命名空间下存在冲突的类名,因此出现错误。

解决方案:

使用以下命令创建新迁移时,始终指定唯一的“迁移名称”:
php spark make:migration unique_migration_name_here
最优选地,“迁移名称”应当简要地描述迁移的实际意图
php spark make:migration alter_users_rename_profile_pic_add_timestamps
检查我之前发布的这个答案:
codeigniter 4 migration file not creating table

相关问题