Laravel 8.27 wprowadza nową metodę po
w instancji migracji Blueprint, która umożliwia jednoczesne dodawanie wielu nowych kolumn po istniejącej kolumnie:
Coming to Laravel next week: Add multiple columns after a specific column. pic.twitter.com/WzfW9mWCcY
— Mohamed Said (@themsaid) February 5, 2021
Wcześniej trzeba było odwoływać się do każdej nowej kolumny, aby uzyskać prawidłową kolejność — widać, że po
ładnie czyści ten kod:
Podczas gdy oryginalny kod nie jest trudny do napisania, metoda
after()
pozwala uniknąć powtarzających się wywołań after()
dla każdej kolejnej nowej kolumny i daje ładną abstrakcję do dodawania wielu kolumn . Łącząc to z Laravel 8 zmiażdżeniem migracjii klas fabryk modeli, Laravel kontynuuje ulepszanie tego, co już jest jednymi z najlepszych narzędzi do migracji dostępnych w dowolnym frameworku.
Schema::table('customers', function ($table) {
$table->string('address_line1')->after('password');
$table->string('address_line2')->after('address_line1');
$table->string('city')->after('address_line2');
});
Jeśli chcesz dowiedzieć się więcej o tym, jak Laravel wdrożyliśmy tę funkcję, sprawdź Żądanie ściągania #36145. Dodawanie wielu kolumn po istniejącej kolumnie jest dostępne po wydaniu v8.27.0.