Rumah > rangka kerja php > Laravel > teks badan

Bagaimana untuk mengesahkan sama ada laravel unik

PHPz
Lepaskan: 2023-04-23 10:01:30
asal
1168 orang telah melayarinya

Dalam rangka kerja Laravel, mengesahkan keunikan data input ialah keperluan biasa. Sebagai contoh, sahkan e-mel atau nombor telefon mudah alih pengguna untuk memastikan bahawa mereka tidak akan didaftarkan berulang kali.

Laravel menyediakan peraturan pengesahan yang sangat mudah - unik. Apabila menyerahkan borang, anda hanya perlu menambah unique:table,column pada peraturan, contohnya:

'username' => 'required|unique:users,username|max:255',
'email' => 'required|unique:users,email|max:255|email',
Salin selepas log masuk

Dalam kod di atas, peraturan unik menentukan pengguna jadual pengesahan keunikan dan nama pengguna medan atau e-mel Ini Ia akan dijamin bahawa tiada pengguna lain menggunakan nama pengguna atau alamat e-mel yang sama.

Walau bagaimanapun, dalam aplikasi praktikal, peraturan unik tidak dapat memenuhi keperluan kami sepenuhnya. Contohnya, apabila kami mengemas kini sekeping data, peraturan pengesahan keunikan asal mungkin melaporkan ralat kerana nilai yang kami kemas kini sudah wujud dalam pangkalan data.

Untuk menyelesaikan masalah ini, Laravel menyediakan parameter tambahan: kecualikan. Contohnya:

'username' => 'required|unique:users,username,' . $userId . ',id|max:255',
Salin selepas log masuk

Dalam kod di atas, $userId mewakili ID pengguna semasa yang akan dikemas kini Kami memberitahu Laravel untuk mengecualikan pengguna semasa semasa mengesahkan keunikan dengan menggunakan parameter kecualikan dalam peraturan unik.

Selain parameter kecualikan, Laravel juga menyediakan parameter other_columns untuk menentukan syarat bagi lajur lain. Contohnya:

'username' => Rule::unique('users')
    ->where(function ($query) use ($other_column_value) {
        return $query->where('other_column', $other_column_value);
    })
    ->ignore($userId),
Salin selepas log masuk

Dalam kod di atas, kami menggunakan kelas Peraturan dan kaedah tempat untuk menentukan syarat bagi lajur lain, memastikan pengesahan keunikan hanya akan dihadkan oleh syarat yang ditetapkan. Kaedah abaikan juga digunakan untuk mengecualikan pengguna semasa.

Untuk meringkaskan, anda perlu memberi perhatian kepada isu berikut semasa mengesahkan keunikan dalam Laravel:

  1. Gunakan parameter kecualikan dalam peraturan unik untuk mengecualikan pengaruh data semasa.
  2. Anda boleh menggunakan kelas Peraturan dan kaedah untuk menentukan syarat bagi lajur lain bagi memastikan pengesahan keunikan tidak dipengaruhi oleh lajur lain.

Menggunakan teknik di atas, kami boleh mengesahkan keunikan data dengan lebih fleksibel dan memastikan integriti dan ketepatan data.

Atas ialah kandungan terperinci Bagaimana untuk mengesahkan sama ada laravel unik. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan
Tentang kita Penafian Sitemap
Laman web PHP Cina:Latihan PHP dalam talian kebajikan awam,Bantu pelajar PHP berkembang dengan cepat!