Laravel Artisan迁移[BadMethodCallException]

3
当我尝试运行php artisan migrate将缺失的迁移迁移到我的数据库时,我会遇到以下异常:
[BadMethodCallException]
未定义方法Illuminate\Database\Query\Builder::up()

请参见下面获取完整日志和堆栈跟踪。
我在本地计算机上的控制台上运行命令。但是在我的服务器上也不起作用。
我已经尝试了以下操作:
1. composer update 2. artisan dump-autoload 3. 删除/vendor并执行composer install
这个(https://github.com/cartalyst/sentry/issues/257)没有帮助,因为我没有一个compile.php文件。(因为在Laravel中默认情况下在本地开发时禁用了它。)
如果您需要更多信息,如完整的迁移代码,请告诉我。
这是来自日志http://snippi.com/s/lz5z86f的完整堆栈跟踪。(我已经将其放入片段中,因为它非常长。)
4个回答

3

我有另一个类和迁移文件名相同。

因此引发了异常。将其重命名并执行 artisan dump-autoload 即可解决问题。


2

我曾经遇到过相同的问题,后来发现我的迁移文件名与类名不同,这解决了我的问题。你可以尝试这个方法。


0

能否展示一下你的迁移过程,因为异常提示你所使用的创建表等方法不存在。每个迁移的布局应该类似于这样:

public function up() {

    Schema::create('users', function($table)
    {
        $table->increments('id');
    });

}

public function down() {

    Schema::drop('users');

}

0
也许你在 DatabaseSeeder 或 Seeder 中调用了一个类而不是 ClassSeeder。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接