当我尝试运行php artisan migrate
将丢失的迁移迁移到我的数据库时。我得到以下异常:
[BadMethodCallException]
Call to undefined method IlluminateDatabaseQueryBuilder::up()
向下查看以获取完整的日志和堆栈跟踪。
我在自己的计算机上本地控制台上运行该命令。但是在我的服务器上它也无法正常工作。
我已经尝试了以下方法:1. composer update
2. artisan dump-autoload
3. 删除/供应商并执行composer install
这(https://github.com/cartalyst/sentry/issues/257)没有帮助,因为我没有编译.php文件。(由于在本地开发中,默认情况下从 laravel 禁用此功能。
如果您需要更多信息,例如完整的迁移代码。请问。
这是日志 http://snippi.com/s/lz5z86f 的完整堆栈跟踪(我已将其放入代码片段中,因为它很长。
我有另一个类,它的文件名与迁移相同。
导致此原因的异常已引发。重命名和执行artisan dump-autoload
有所帮助。
我遇到了同样的问题,然后我意识到我的迁移文件名与类名不同,这为我解决了问题。试试那个。
您能否向我们展示您的迁移,因为异常告诉您用于创建表等的方法不存在。在每次迁移中,布局应如下所示:
public function up() {
Schema::create('users', function($table)
{
$table->increments('id');
});
}
public function down() {
Schema::drop('users');
}
也许你在数据库播种器或播种器中调用一个类而不是类播种器