Rumah >rangka kerja php >Laravel >Bagaimana untuk menggantikan id kunci utama dalam laravel
Laravel ialah rangka kerja PHP yang sangat popular Ia mempunyai sintaks yang cantik dan fungsi yang berkuasa, membolehkan pembangun membina aplikasi web yang cekap dengan mudah. Dalam Laravel, setiap jadual pangkalan data mesti mempunyai kunci utama, yang biasanya lalai kepada medan "id", dan medan ini mestilah medan auto-kenaikan. Walau bagaimanapun, dalam beberapa senario perniagaan tertentu, kami mungkin perlu menggantikan medan "id" dengan medan lain sebagai kunci utama Dalam kes ini, kami perlu menggunakan kaedah penggantian kunci utama yang disediakan dalam dokumentasi rasmi Laravel.
1. Latar Belakang
Walaupun ia adalah situasi yang paling biasa untuk menggunakan kunci utama "id" secara lalai dalam Laravel, kadangkala reka bentuk asal jadual pangkalan data mungkin tidak cukup piawai atau unik . Pada masa ini, anda perlu menggantikan kunci utama asal dengan medan lain. Contohnya, dalam sesetengah senario perniagaan, mungkin perlu menggunakan nombor telefon mudah alih pengguna sebagai pengecam unik dan bukannya medan "id" lalai. Jika medan "id" lalai digunakan sebagai kunci utama, sistem tidak boleh membuat pertanyaan dengan cepat dan mengesan secara unik objek pengguna dalam sistem melalui nombor telefon mudah alih. Oleh itu, kita perlu menggunakan nombor telefon bimbit sebagai kunci utama untuk menyelesaikan masalah ini dengan lebih baik.
Dalam Laravel, kami boleh menggantikan kunci utama dengan mudah melalui model data berkuasa Eloquent ORM.
2. Cara menggunakan
Kaedah menggantikan kunci utama yang disediakan dalam Laravel adalah sangat mudah Anda hanya perlu mentakrifkan atribut $primaryKey dalam Model yang sepadan dan menetapkan nilai kepada anda perlu diganti dengan nama medan utama. Sebagai contoh, jika kita perlu menggunakan nombor telefon mudah alih pengguna sebagai kunci utama, kita boleh menentukan kod berikut dalam Model Pengguna:
<?php namespace App; use Illuminate\Database\Eloquent\Model; class User extends Model { protected $primaryKey = 'phone'; // 将phone字段设为主键 }
Dengan cara ini, apabila menggunakan Eloquent ORM untuk membuat pertanyaan, Laravel akan lalai ke medan "telefon" Digunakan sebagai kunci utama. Sebagai contoh, jika kami perlu menanyakan maklumat pengguna, kami boleh menggunakan kod berikut:
$user = App\User::find('13888888888');
Dengan cara ini, kami boleh menanyakan maklumat pengguna melalui nombor telefon mudah alih pengguna "13888888888".
3. Situasi yang berkenaan
Dalam pembangunan sebenar, mungkin jarang menggantikan kunci utama, tetapi ia sangat praktikal dalam beberapa senario perniagaan tertentu. Contohnya:
4. Ringkasan
Laravel menyediakan kaedah yang sangat mudah untuk menggantikan kunci utama, yang boleh menyelesaikan masalah penggunaan kunci utama bukan lalai dalam beberapa senario perniagaan tertentu dengan mudah. Walaupun penggantian kunci utama agak jarang digunakan dalam pembangunan sebenar, ia sememangnya penyelesaian pelaksanaan yang baik yang membolehkan pembangun memilih kunci utama yang berbeza mengikut keperluan perniagaan yang berbeza, yang akan lebih sepadan dengan logik keperluan aplikasi, sambil menambah baik aplikasi prestasi.
Atas ialah kandungan terperinci Bagaimana untuk menggantikan id kunci utama dalam laravel. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!