Home
Button Mobile Webdesign em Foco
Newsletter Webdesign em Foco
Support Webdesign em Foco
Contribuition Webdesign em Foco
Doe para a Webdesign em Foco
Suporte da Webdesign em Foco
Fechar

Curso de Laravel para Noobs - #19 Seeders

28/07/2023

Nessa aula aprenderemos como criar seeder dentro do framework Laravel de forma que consigamos popular o banco de dados de maneira rápida e eficiente para realizar testes.

Semeadores do Laravel

No contexto do Laravel, um "seeder" é uma classe que permite popular o banco de dados com dados de teste ou dados iniciais. O Laravel é um popular framework de desenvolvimento web em PHP que segue o padrão MVC (Model-View-Controller) e fornece muitas ferramentas e recursos para facilitar o desenvolvimento de aplicativos web.

Os seeders são especialmente úteis durante o desenvolvimento e testes de um projeto, pois permitem que você crie um conjunto consistente de dados no banco de dados sem precisar inseri-los manualmente. Isso é valioso para simular dados reais no ambiente de desenvolvimento e para preparar o banco de dados para testes automatizados.

Os seeders são geralmente colocados no diretório database/seeders do seu projeto Laravel. Cada seeder é uma classe que estende a classe Seeder do Laravel e possui um método chamado run(). Dentro desse método, você pode utilizar o Eloquent ORM do Laravel para criar registros no banco de dados.

Para a criação de um novo seeder podemos chamar o seguinte comando:

php artisan make:seeder NomeSeeder

database/seeders/UserSeeder.php

Os seeders possuem a seguinte estrutura:

<?php

namespace Database\Seeders;

use App\Models\Todo;
use App\Models\User;
use Illuminate\Database\Console\Seeds\WithoutModelEvents;
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\DB;
use Illuminate\Support\Facades\Hash;
use Illuminate\Support\Str;

class UserSeeder extends Seeder
{
    public function run()
    {
        User::insert([
            [
                'id' => 1,
                'name' => 'thiagouser',
                'email' => 'qualquer@oi.com',
                'password' => Hash::make('123')
            ],
            [
                'id' => 2,
                'name' => 'Marianauser',
                'email' => 'mariana@oi.com',
                'password' => Hash::make('456')
            ]
        ]);
        Todo::insert([
            [
                'nome' => 'PSDB',
                'votos' => 3,
                'user_id' => 1
            ]
        ]);
    }
}

database/seeders/DatabaseSeeder.php

Não esqueça que após criar o seeders é necessário chamá-los atravase do arquivo DatabaseSeeder.php

public function run()
{
    $this->call([
        UserSeeder::class
    ]);
}

Por fim, para rodar um seeder, basta chamar o comando no terminal:

php artisan db:seed

Por hoje é só! Fiquem todos com Deus! Sucesso nos códigos e na vida!

Precisa de um suporte profissional? webdesignemfoco@gmail.com

Receba as aulas da Webdesign em Foco em Seu Email
Suporte Webdesign em Foco

Posts Relacionados

Curso de Laravel para Noobs - #18 Models IX [whereIn]
Neste tutorial aprenderemos como realizar consultas no banco de dados do Laravel tendo como origens arrays. Para isso, utilizaremos o método whereIn.
Saiba mais!
Curso de Laravel para Noobs - #20 Factory
Nessa aula aprenderemos como popular o banco de dados do Laravel utilizando o recurso das Factories para gerar dados fictícios com apenas um comando.
Saiba mais!
Framework
Nessa playlist aprenderemos um pouco mais sobre os diferentes frameworks existentes, apontando os defeitos e qualidades de cada um.
Saiba mais!