Хеширование паролей сидеры
Таблица с юзерами в Laravel особенная. По ней осуществляется авторизация пользователей. Для этого в таблице должно быть поле password
, содержащее хеш пароля.
Поэтому при генерации юзеров мы должны вместо паролей вставлять хеши этих паролей. Давайте сделаем это. Для начала подключим фасад Hash
для хеширования пароля:
database/seeders/DatabaseSeeder.php<?php
use Illuminate\Support\Facades\DB; // подключаем фасад DB
use Illuminate\Support\Str; // подключаем фасад Str
use Illuminate\Support\Facades\Hash; // подключаем фасад для хеширования пароля Hash
class DatabaseSeeder extends Seeder
{
public function run()
{
}
}
Теперь с помощью метода make
при вставке нового юзера захешируем придуманный нами пароль:
database/seeders/DatabaseSeeder.php<?php
use Illuminate\Support\Facades\DB; // подключаем фасад DB
use Illuminate\Support\Str; // подключаем фасад Str
use Illuminate\Support\Facades\Hash; // подключаем фасад для хеширования пароля Hash
class DatabaseSeeder extends Seeder
{
public function run()
{
DB::table('users')->insert([
'name' => Str::random(10),
'email' => Str::random(10).'@gmail.com',
'password' => Hash::make('12345'),
]);
}
}