如何从 Laravel 项目中删除所有迁移但保留表和字段

How to remove all migrations from a Laravel project but keep the tables and fields

我决定从 Laravel 5.7 项目中删除所有迁移,因为我宁愿 create/update 手动处理表。我已经意识到仍然可以从数据库加载数据而无需任何迁移文件。

删除迁移中的迁移文件和数据table,但保留其他table和字段。

根据此 SO answer 修改的步骤。

  • 备份数据库。 official link for mysqldump command.
  • 删除迁移文件夹中的所有文件\database\migrations\
  • 删除MySQL中migrationstable的内容delete from migrations;
  • 在项目文件夹中运行composer dump-autoload

如果您手动管理 table,请记得添加

created_at 时间戳 NULL 默认 NULL

updated_at 时间戳 NULL 默认 NULL

字段到你的 tables 如果你想使用 Laravels 内置的时间戳功能。如果您不想使用它,请将它们排除在外并将以下行添加到模型中:

public $timestamps = false;

有关时间戳的更多详细信息,请参阅此 SO question