0

所以我刚开始玩 Laravel 5.1。我创建了一个名为“教师”的迁移模型。然后我手动删除了包含 Teachers 类的 Teachers.php 模型文件。现在,当我尝试回滚时,出现以下错误:

[Symfony\Component\Debug\Exception\FatalErrorException]  
  Class 'CreateTeachersTable' not found

我试过了,composer dump-autoload但它一直在给出上述错误。我只想重新开始。如何重置一切?php artisan migrate:refreshphp artisan migrate:reset

4

3 回答 3

2

好的。所以我找到了解决方案。php artisan migrate:rollback所以如果你在没有使用上述命令的情况下不小心删除了任何模型文件或迁移文件,任何迁移命令都会导致问题。所以你需要做的是,从数据库中手动删除所有表。我正在使用 sqlite 数据库,我删除了迁移、用户、问题、教师、密码重置所有由 migrate 命令生成的表。然后我跑了composer dumpautoload。然后我在php artisan migrate对文件进行更改后再次运行命令,一切恢复正常。所以基本上删除迁移表解决了这个问题。

于 2015-10-21T19:41:47.627 回答
1

refresh您进行迁移时,Laravel 会查看您的migrations表并使用其中的值来加载迁移文件以进行回滚。

由于您手动删除了迁移文件,因此它从未从您的migrations表中删除。对于给定的迁移文件,您必须手动删除该表中的行。

于 2015-10-21T20:12:41.717 回答
0

首先,通过在您的项目文件夹中进行完整搜索来检查该类是否仍然在某处被引用,如果没有,请尝试运行:

php artisan clear-compiled

于 2015-10-21T19:22:47.807 回答