Rumah > pembangunan bahagian belakang > tutorial php > Bagaimana untuk Mengesahkan Keunikan Berbilang Lajur dalam Laravel?

Bagaimana untuk Mengesahkan Keunikan Berbilang Lajur dalam Laravel?

DDD
Lepaskan: 2024-11-02 14:01:02
asal
324 orang telah melayarinya

How to Validate the Uniqueness of Multiple Columns in Laravel?

Mengesahkan Berbilang Lajur untuk Keunikan dalam Laravel

Dalam Laravel, peraturan pengesahan unik memastikan keunikan nilai dalam lajur pangkalan data yang ditentukan. Walau bagaimanapun, apabila berurusan dengan berbilang lajur, adalah tidak mudah untuk mengesahkan keunikan gabungannya.

Memandangkan soalan itu, kami mempunyai dua lajur, ip dan nama hos, dalam jadual pelayan. Untuk mengesahkan bahawa rekod baharu dengan nilai ip tertentu belum wujud dalam jadual bersama nilai nama hos sedia ada, kami boleh menggunakan Rule::unique.

Coretan kod berikut menunjukkan cara untuk mencapai pengesahan yang diingini :

<code class="php">$messages = [
    'data.ip.unique' => 'Given ip and hostname are not unique',
];

Validator::make($data, [
    'data.ip' => [
        'required',
        Rule::unique('servers')
            ->where(function ($query) use ($ip, $hostname) {
                return $query->where('ip', $ip)
                    ->where('hostname', $hostname);
            }),
    ],
], $messages);</code>
Salin selepas log masuk

Peraturan pengesahan ini menyemak sama ada rekod dengan gabungan ip dan nama hos yang sama sudah wujud dalam jadual pelayan. Jika ya, ia mengembalikan mesej ralat mengikut mesej tersuai yang dinyatakan dalam $messages. Dengan mentakrifkan penutupan tempat, kami boleh menentukan syarat tepat untuk keunikan, memastikan kedua-dua nilai ip dan nama hos diambil kira.

Atas ialah kandungan terperinci Bagaimana untuk Mengesahkan Keunikan Berbilang Lajur dalam Laravel?. 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