Rumah > Artikel > rangka kerja php > Apakah pemadaman lembut dalam laravel5.4
Dalam "Laravel 5.4", pemadaman lembut merujuk kepada menandakan status rekod jadual sebagai dipadamkan ia sebenarnya tidak dipadamkan daripada pangkalan data, supaya penapisan boleh ditambah apabila membuat pertanyaan Pemadaman lembut boleh dikenal pasti dalam jadual dengan nilai medan "deleted_at", dan nilai lalai adalah nol.
Persekitaran pengendalian artikel ini: sistem Windows 10, Laravel versi 5.4, komputer Dell G3.
Pemadaman lembut tidak benar-benar dipadamkan daripada pangkalan data, tetapi medan deleted_at (nama medan ini juga ditetapkan) dalam jadual Pengenalan nilai, anda perlu menambah medan ini deleted_at semasa mereka bentuk jadual, nilai lalainya adalah batal,
Apa yang dipanggil pemadaman lembut bermaksud bahawa rekod jadual data sebenarnya tidak dipadamkan daripada pangkalan data, tetapi rekod jadual adalah The status pengenalan ditandakan sebagai dipadam lembut, supaya ia boleh ditapis semasa membuat pertanyaan untuk membuat rekod jadual yang sepadan kelihatan telah "dipadamkan". Laravel menggunakan medan tarikh sebagai status pengenalan Medan tarikh ini boleh disesuaikan Di sini kami menggunakan deleted_at Jika model yang sepadan dipadamkan secara lembut, nilai medan deleted_at ialah masa pemadaman.
Pemadaman lembut ialah pemadaman logik Lembaran pengekalan data ditandakan dengan status pemadaman Secara amnya, kami akan menggunakan masa pemadaman sebagai tanda, supaya status tanda dan masa pemadaman juga diketahui.
Jenisnya ialah cap waktu('deleted_at')
Tambah penggunaan SoftDeletes
use Illuminate\Database\Eloquent\SoftDeletes; class TestModel extends Model { use SoftDeletes; protected $dates = ['deleted_at']; }
contohnya adalah seperti berikut:
Gunakan Laravel untuk menyesuaikan Didatangkan dengan Eloquent ORM untuk melaksanakan pemadaman lembut.
Mula-mula tambahkan medan masa pemadaman dalam fail pemindahan data
./database/migrations/2014_10_12_000000_create_users_table.php
<?php use Illuminate\Database\Migrations\Migration; use Illuminate\Database\Schema\Blueprint; use Illuminate\Support\Facades\Schema; return new class extends Migration { /** * Run the migrations. * * @return void */ public function up() { Schema::create('users', function (Blueprint $table) { $table->id(); $table->string('name'); $table->string('email')->unique(); $table->timestamp('email_verified_at')->nullable(); $table->string('password'); $table->rememberToken(); $table->timestamps(); $table->softDeletes()->comment('删除时间');// 默认添加 deleted_at 字段 }); } /** * Reverse the migrations. * * @return void */ public function down() { Schema::dropIfExists('users'); } };
[Cadangan berkaitan: tutorial video laravel]
Atas ialah kandungan terperinci Apakah pemadaman lembut dalam laravel5.4. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!