Laravel Model Sanitize — это пакет, созданный Тоухидур Рахман для обработки процесса очистки данных модели при создании и обновлении записей.
Учитывая следующий вызов User::create ()
, пакет Sanitize автоматически удалит незаполняемые данные:
// 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
будет автоматически работать для различных методов создания и обновления модели (например, updateOrCreate, firstOrCreate и т. д.).
Если вы используют $fillable
в моделях, этот пакет не понадобится, однако, если вы используете $guarded = []
, этот пакет отбросит столбцы, не найденные в таблице.
Пакет также имеет два статических метода для разделения данных с соответствующими полями для получения действительных/недействительных данных:
$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',
]
*/
Вы можете узнать больше об этом пакете, получить полные инструкции по установке и просмотрите исходный код на GitHub.
< em>Этот пакет был отправлен на наш Ссылки на новости Laravel. Links — это место, где сообщество может публиковать пакеты и руководства по экосистеме Laravel. Следите за обновлениями в Твиттере @LaravelLinks