Rumah > rangka kerja php > Laravel > kaedah penulisan padam laravel

kaedah penulisan padam laravel

WBOY
Lepaskan: 2023-05-26 13:46:07
asal
1837 orang telah melayarinya

Laravel ialah rangka kerja web PHP popular yang popular di kalangan pembangun kerana ciri yang berkuasa dan kemudahan penggunaannya. Dalam pembangunan sebenar, kita sering perlu memadam data dalam pangkalan data. Artikel ini akan memperkenalkan cara menulis pemadaman dalam Laravel untuk membantu anda memahami dan menggunakan Laravel dengan lebih baik.

  1. Padamkan sekeping data

Laravel menyediakan pelbagai kaedah untuk memadamkan sekeping data, yang diperkenalkan di bawah.

(1) Gunakan kaedah delete() yang disertakan dengan model

Dalam Laravel, setiap model disertakan dengan kaedah delete() yang boleh digunakan untuk memadam pangkalan data yang sepadan dengan model . Berikut ialah contoh kod untuk menggunakan kaedah:

$user = User::find(1);
$user->delete();
Salin selepas log masuk
Salin selepas log masuk

Dalam kod di atas, kami mula-mula menggunakan kaedah find() model Pengguna untuk mencari rekod dengan ID 1, dan kemudian panggil delete() kaedah untuk memadam rekod.

Perlu diambil perhatian bahawa kaedah delete() tidak menyemak sama ada model lain bergantung pada rekod, jadi anda perlu memastikan ia tidak dikaitkan dengan data lain sebelum memadamkan rekod.

(2) Gunakan kaedah destroy() ORM

ORM (Object-Relational Mapping) ialah teknologi yang memetakan objek kepada data dalam pangkalan data hubungan. Laravel mempunyai fungsi ORM terbina dalam, dan kaedah destroy() boleh digunakan untuk memadam rekod pangkalan data yang sepadan dengan model.

Berikut ialah contoh kod untuk memadamkan satu rekod menggunakan kaedah destroy() ORM:

User::destroy(1);
Salin selepas log masuk

Dalam kod di atas, kami terus memanggil kaedah destroy() model Pengguna dan lulus dalam rekod untuk dipadamkan.

Perlu diambil perhatian bahawa kaedah destroy() juga tidak menyemak sama ada model lain bergantung pada rekod, jadi anda perlu memastikan ia tidak dikaitkan dengan data lain sebelum memadamkan rekod.

(3) Gunakan kaedah delete() Query Builder

Query Builder ialah pembina pernyataan SQL dalam Laravel berdasarkan panggilan berantai. Ia menyediakan banyak kaedah untuk mengendalikan pangkalan data, termasuk kaedah delete() untuk memadam data.

Berikut ialah contoh kod untuk memadamkan satu rekod menggunakan kaedah delete() Query Builder:

DB::table('users')->where('id', 1)->delete();
Salin selepas log masuk

Dalam kod di atas, kami menggunakan fasad DB (Pangkalan Data) untuk memanggil jadual( ) kaedah untuk menentukan rekod yang akan dipadamkan Nama jadual data, kemudian gunakan kaedah where() untuk menentukan syarat yang hendak dipadam, dan akhirnya panggil kaedah delete() untuk melaksanakan operasi padam.

Perlu diambil perhatian bahawa kaedah delete() tidak akan mencetuskan peristiwa dan cangkuk model, jadi jika anda menggunakan fungsi ini, adalah disyorkan untuk menggunakan salah satu kaedah di atas.

  1. Padam data dalam kelompok

Selain memadamkan satu rekod pangkalan data, Laravel juga menyediakan kaedah yang mudah untuk memadam data dalam kelompok. Berikut ialah pengenalan kepada dua kaedah pemadaman kelompok yang biasa digunakan.

(1) Gunakan kaedah delete() ORM

Kaedah delete() ORM bukan sahaja boleh memadamkan satu rekod, tetapi juga memadamkan berbilang rekod dalam kelompok. Berikut ialah contoh kod yang menggunakan kaedah ini untuk memadamkan rekod dalam kelompok:

User::where('age', '>', 18)->delete();
Salin selepas log masuk

Dalam kod di atas, kami mula-mula menggunakan kaedah where() untuk menapis pengguna yang berumur lebih daripada 18 tahun, dan kemudian memanggil kaedah delete() untuk memadam rekod ini.

Perlu diambil perhatian bahawa kaedah delete() tidak akan mencetuskan peristiwa dan cangkuk model, jadi jika anda menggunakan fungsi ini, adalah disyorkan untuk menggunakan salah satu kaedah di atas.

(2) Gunakan kaedah delete() Query Builder

Kaedah delete() Query Builder juga boleh digunakan untuk memadam rekod dalam kelompok. Berikut ialah contoh kod yang menggunakan kaedah ini untuk memadam rekod dalam kelompok:

DB::table('users')->where('age', '>', 18)->delete();
Salin selepas log masuk

Dalam kod di atas, kami menggunakan kaedah where() untuk menentukan syarat yang hendak dipadamkan dan menggunakan kaedah delete() untuk melaksanakan operasi pemadaman.

Perlu diambil perhatian bahawa kaedah delete() tidak akan mencetuskan peristiwa dan cangkuk model, jadi jika anda menggunakan fungsi ini, adalah disyorkan untuk menggunakan salah satu kaedah di atas.

  1. Pemadaman lembut

Dalam pembangunan sebenar, kadangkala kita perlu menyimpan rekod data yang dipadamkan untuk pemulihan kemudian. Pada ketika ini, Soft Delete sangat berguna. Laravel mempunyai ciri padam lembut terbina dalam yang membantu kami memadamkan data dengan cara yang selamat.

Idea teras pelaksanaan pemadaman lembut adalah untuk menambah medan deleted_at dalam jadual pangkalan data untuk merekodkan masa pemadaman. Apabila menanyakan data, Laravel akan menapis rekod yang dipadam lembut secara automatik supaya ia tidak dipaparkan dalam hasil pertanyaan.

Berikut ialah contoh kod untuk melaksanakan pemadaman lembut menggunakan Laravel:

Pertama, anda perlu menggunakan ciri SoftDeletes dalam model:

<?php

namespace App;

use IlluminateDatabaseEloquentModel;
use IlluminateDatabaseEloquentSoftDeletes;

class User extends Model
{
    use SoftDeletes;
}
Salin selepas log masuk

Kemudian, tambah deleted_at medan dalam pemindahan pangkalan data:

Schema::table('users', function (Blueprint $table) {
    $table->softDeletes();
});
Salin selepas log masuk

Akhir sekali, gunakan kaedah delete() dalam pengawal untuk memadamkan data secara lembut:

$user = User::find(1);
$user->delete();
Salin selepas log masuk
Salin selepas log masuk

Jika anda perlu memulihkan data yang dipadam, anda boleh menggunakan kaedah restore():

$user = User::withTrashed()->find(1);
$user->restore();
Salin selepas log masuk

Pemadaman lembut boleh membantu kami mengurus data yang dipadamkan dengan lebih baik tanpa perlu risau tentang pemadaman data secara tidak sengaja. Walau bagaimanapun, perlu diingatkan bahawa pemadaman lembut bukanlah penyelesaian universal Dalam sesetengah senario perniagaan, data perlu dipadam sepenuhnya untuk memastikan integriti dan keselamatan data.

Ringkasan

Laravel menyediakan pelbagai kaedah untuk memadam data, dan anda boleh memilih kaedah berbeza mengikut keperluan perniagaan tertentu. Dalam pembangunan sebenar, kita perlu mempertimbangkan dengan teliti sama ada akan menggunakan operasi seperti pemadaman lembut atau pemadaman kelompok berdasarkan situasi untuk memastikan integriti dan keselamatan data. Pada masa yang sama, perlu diingatkan bahawa pemadaman data boleh menjejaskan operasi biasa model atau fungsi lain, dan ujian dan pengesahan yang mencukupi diperlukan.

Atas ialah kandungan terperinci kaedah penulisan padam 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