2015-11-24 27 views
15

Chcę zmienić nazwę mojej dwóch tabel w Laravel, więc muszę ręcznie zmienić nazwę tabeli lub może to być możliwe poprzez migrację.Migracja Laravel do zmiany nazwy tabeli

+1

z dokumentu: Schemat :: zmiana nazwy ($ z, $ na); http://laravel.com/docs/5.1/migrations#renaming-and-dropping-tables – Needpoule

+0

Dzięki za pomoc, działa – HKumar

+0

@Needpoule przepraszam, po prostu przeczytaj komentarz. –

Odpowiedz

33

myślę, że można to zrobić:

Schema::rename($currentTableName, $newTableName); 

Aby usunąć istniejącą tabelę, można użyć spadku lub dropIfExists metody:

Schema::drop('users'); 

Schema::dropIfExists('users'); 

Wystarczy dodać, że do migracji i powinno działać .

+0

Działa, dziękuję – HKumar

+0

Tak, działało. Umieść kod w funkcji up() migracji o nazwie change_table_name –

+0

Czy zmieni to również nazwę kontrolerów/modeli? – Radmation

6

Aby zmienić nazwę istniejącej tabeli bazy danych, należy użyć metody Zmień nazwę:

Schema::rename($from, $to); 

spadać istniejącej tabeli, można użyć kropli lub dropIfExists metod:

Schema::drop('users'); 

Schema::dropIfExists('users'); 
0

próbowałem czegoś nowego i zadziałało.

Zmień to:

Schema::create('past_name', function (Blueprint $table) 

linia na stronie migracje w tym:

Schema::create('new_name', function (Blueprint $table) 

linia, aw cmd szybka, zrobić odświeżenie migracji z tym:

php artisan migrate:refresh 

It Mam nadzieję, że będę pracował.

Powiązane problemy