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