Mengatasi Isu "Migrasi Laravel: Kunci Unik Terlalu Panjang"
Apabila memindahkan jadual pengguna Laravel, pembangun mungkin menghadapi ralat yang menunjukkan bahawa kunci unik yang ditentukan adalah terlalu panjang. Walaupun secara eksplisit menyatakan parameter kedua dalam kaedah unique(), seperti yang dicadangkan oleh urutan isu Laravel, ralat berterusan.
Isu asas berkisar pada panjang lajur e-mel. Panjang lalai Laravel untuk lajur rentetan ialah 255 aksara, yang mungkin tidak mencukupi untuk alamat e-mel.
Penyelesaian
Untuk menyelesaikan isu ini, nyatakan panjang yang lebih kecil untuk lajur e-mel . Panjang lalai yang disyorkan ialah 250 aksara:
$table->string('email', 250);
Walau bagaimanapun, perlu diingat bahawa isu ini telah ditangani dalam Laravel 5.4. Untuk menggunakan penyelesaian untuk versi ini:
Untuk Laravel 5.4 dan Kemudian
use Illuminate\Database\Schema\Builder; public function boot() { Builder::defaultStringLength(191); }
Ini menetapkan panjang rentetan lalai sebanyak 191 aksara untuk lajur rentetan, yang menghapuskan keperluan untuk menentukan panjang lajur secara manual.
Atas ialah kandungan terperinci Bagaimana untuk Membetulkan Ralat 'Migrasi Laravel: Kunci Unik Terlalu Panjang'?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!