Sanitasi Data Model Secara Otomatis Di Laravel - CRUDPRO

Sanitasi Data Model Secara Otomatis Di Laravel

Sanitasi Data Model Secara Otomatis Di Laravel - Laravel Model Sanitize adalah paket laravel yang dibuat oleh Touhidur Rahman untuk menangani proses sanitasi data model saat membuat dan memperbarui catatan.

Dengan panggilan berikut ke User::create(), paket Sanitize akan menghapus data yang tidak dapat diisi secara otomatis:

<?php
// Using the package's Sanitizable triat
use Touhidurabir\ModelSanitize\Sanitizable;
use Illuminate\Database\Eloquent\Model;

class User extends Model {
    use Sanitizable;
}

// The trait removes the `data` key, which is not a fillable field
$data = [
    'email' => '[email protected]',
    'password' => 'password',
    'data' => 'some data' // Invalid field
];

User::create($data);
`Sanitizable` trait akan otomatis bekerja untuk berbagai metode membuat dan memperbarui model (i.e., updateOrCreate, firstOrCreate, etc.).

Jika kamu menggunakan `$fillable` di model, maka tidak memerlukan paket ini, Tetapi, jika kamu mengguanakn `$guarded = []`, paket ini akan membuang kolom yang tidak ditemukan di tabel.

Paket ini juga memiliki dua metode statis untuk memisahkan data dengan bidang yang sesuai untuk mendapatkan data yang valid / tidak valid:

<?php
$data = [
    'email' => '[email protected]',
    'password' => 'password',
    'data' => 'some data',
    'name' => 'Test User'
];

// Get only valid fields
User::sanitize($data);
/*
[
    'email' => '[email protected]',
    'password' => 'password',
    'name' => 'Test User'
]
*/

// Get invalid attributes from data
User::gibberish($data);
/*
[
    'data' => 'some data',
]
*/

Kamu dapat mempelajari lebih lanjut tentang paket ini, mendapatkan petunjuk instalasi lengkap, dan melihat sumber kode di GitHub nya.