Bagaimana untuk Melaksanakan Operasi Upsert Menggunakan ORM Fasih Laravel?

Mary-Kate Olsen
Lepaskan: 2024-10-20 08:44:02
asal
558 orang telah melayarinya

How to Perform Upsert Operations Using Laravel's Eloquent ORM?

Menyatukan dengan ORM Fasih Laravel

Dalam Pemetaan Perhubungan Objek Laravel (ORM), selalunya perlu mencipta rekod baharu jika ia tidak wujud atau mengemas kini rekod sedia ada jika ada.

Apakah itu Upserting?

Upserting ialah istilah yang digunakan untuk menerangkan gabungan operasi sisipan dan kemas kini menjadi satu perintah. Dalam konteks pangkalan data, upserting membolehkan anda melakukan sama ada operasi sisipan atau kemas kini berdasarkan sama ada rekod dengan kriteria tertentu wujud dalam jadual atau tidak.

Melaksanakan Operasi Upsert

Dalam Laravel Eloquent, upserting boleh dicapai menggunakan kaedah firstOrNew. Kaedah ini mengambil tatasusunan kriteria sebagai hujahnya dan mengembalikan sama ada model sedia ada jika rekod yang sepadan dengan kriteria ditemui, atau contoh model baharu jika tiada rekod sepadan wujud.

Contoh: Mengganggu Pengguna Rakam

Pertimbangkan senario di mana anda ingin mencipta pengguna baharu jika pengguna itu tidak wujud, atau kemas kini pengguna sedia ada jika ada. Berikut ialah contoh:

<code class="php">$user = User::firstOrNew(array('name' => Input::get('name')));
$user->foo = Input::get('foo');
$user->save();</code>
Salin selepas log masuk

Dalam contoh ini, kaedah firstOrNew menyemak sama ada Pengguna dengan nama yang ditentukan sudah wujud dalam pangkalan data. Jika ia wujud, model sedia ada dikembalikan. Jika tidak, contoh model baharu dibuat dan dikembalikan.

Pautan Dokumentasi Kemas Kini:

Untuk mendapatkan maklumat terkini tentang upserting dalam Laravel, rujuk dokumentasi rasmi di sini: [ Pautan Dokumen yang dikemas kini]

Atas ialah kandungan terperinci Bagaimana untuk Melaksanakan Operasi Upsert Menggunakan ORM Fasih Laravel?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php
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
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan