2013-10-19 99 views
2

當我嘗試運行php artisan migrate將缺少的遷移遷移到我的數據庫時。我得到以下異常:Laravel Artisan Migrate [BadMethodCallException]

[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(我已經把它變成一個片段的原因是相當長的。)

回答

2

我有另一個類具有相同的文件名,如遷移。

引發此異常的原因。重命名並執行artisan dump-autoload幫助。

0

你能告訴我們你的遷移,因爲異常告訴你,用於創建方法的完整堆棧跟蹤表等不在那裏。在每一個移民的佈局應該是這個樣子:

public function up() { 

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

} 

public function down() { 

    Schema::drop('users'); 

} 
+0

這是我使用的遷移:http://snippi.com/s/qyrw7wp – Reflic

2

我有同樣的問題,然後我意識到,我的移民文件名從類名稱不同,並且修復了這個問題對我來說。試試那個。