품목

라라벨 데이터베이스 시더

Laravel은 관리 사용자 및 사전 데이터와 함께 프로젝트 검증에 유용한 테스트 데이터 생성을 위한 시더를 소개합니다.defi데이터베이스에 완료되었습니다.

등록 페이지가 없는 관리자 프로젝트가 있을 때마다 무엇을 하시겠습니까? 적어도 한 명의 관리 사용자를 만들어야 합니다. 따라서 기본적으로 그는 로그인하여 전체 관리자 패널에 액세스할 수 있습니다. 하지만 프런트 엔드에 가입 페이지가 없습니다. 로그인 페이지만 있습니다. 따라서 데이터베이스에서 직접 관리자를 만들 수 있습니까? 그렇다면 프로젝트의 새 구성을 만들 때 항상 데이터베이스에서 직접 새 관리자 사용자를 만들어야 합니다. 그러나 laravel 8 시더를 사용하여 관리자 사용자를 만들 수 있도록 관리자 시더를 만들 것을 제안합니다. laravel 8에서 시더를 실행하려면 명령을 실행하십시오.

사전 설정 구성이 있는 경우에도 마찬가지입니다.defi이제 설정 시더를 만들고 사전 구성을 추가할 수 있습니다.defi데이터베이스 테이블에 연결되었습니다.

Laravel의 데이터베이스 시더는 무엇입니까

Laravel은 시더 클래스를 사용하여 데이터베이스에 테스트 데이터를 시딩하는 쉬운 방법을 제공합니다. Laravel에서 데이터베이스를 시드하여 테스트 목적으로 가짜 데이터를 데이터베이스에 추가할 수 있습니다.

Laravel의 데이터베이스 Seeder 예제

먼저 다음 명령으로 시더를 만듭니다.

php artisan make:seeder UserSeeder

명령을 실행하면 파일이 생깁니다. UserSeeder.php 폴더에 seeds. 수업 seed 디렉토리에 저장됩니다 database/seeders.

namespace Database\Seeders;
 
use App\Models\User;
use Illuminate\Database\Seeder;
use Illuminate\Support\Facades\Hash;
 
class UserSeeder extends Seeder
{
    /**
     * Run the database seeds.
     *
     * @return void
     */
    public function run()
    {
        User::create([
            'name' => 'John Jackson',
            'email' => 'john@jackson.com',
            'mobile' => '123456789',
            'password' => Hash::make('john@123')
        ]);
    }
}

이제 다른 시더를 호출하는 방법을 살펴보겠습니다. call 메서드는 DatabaseSeeder 클래스 내에서 추가 시드 클래스를 실행하는 데 사용됩니다. 단일 시더 클래스가 너무 커지지 않도록 데이터베이스 시딩을 여러 파일로 분할할 수 있습니다. call 메서드는 실행해야 하는 시더 클래스의 배열을 허용합니다.

혁신 뉴스레터
혁신에 관한 가장 중요한 뉴스를 놓치지 마세요. 이메일로 받으려면 가입하세요.
<?php
  
use Illuminate\Database\Seeder;
   
class DatabaseSeeder extends Seeder
{
    public function run()
    {
         $this->call([
         UserSeeder::class,
         PostSeeder::class,
     ]);
    }
}

실행 명령 seeder

php artisan db:seed

시더를 개별적으로 실행하는 명령

php artisan db:seed –class=UserSeeder

다음을 실행할 수도 있습니다. seeding 명령을 사용하여 데이터베이스의 migrate:fresh 옵션과 함께 –seed. 이 명령은 모든 테이블을 삭제하고 모든 마이그레이션을 다시 실행하며 데이터베이스를 다시 빌드합니다.

php artisan migrate:fresh --seed

Ercole Palmeri

당신은 또한 좋아할지도 모릅니다 :

혁신 뉴스레터
혁신에 관한 가장 중요한 뉴스를 놓치지 마세요. 이메일로 받으려면 가입하세요.

최근 기사

어린이를 위한 컬러링 페이지의 장점 - 모든 연령대를 위한 마법의 세계

색칠을 통해 소근육 운동 능력을 키우면 아이들이 글쓰기와 같은 보다 복잡한 기술을 준비할 수 있습니다. 색칠하다…

2 월 2024

미래가 여기에 있습니다: 해운 산업이 글로벌 경제를 어떻게 혁신하고 있습니까?

해군 부문은 150억 시장을 향해 항해해온 진정한 글로벌 경제강국입니다.

1 월 2024

출판사와 OpenAI, 인공지능이 처리하는 정보의 흐름을 규제하기 위한 계약 체결

지난 월요일, Financial Times는 OpenAI와의 계약을 발표했습니다. FT는 세계적 수준의 저널리즘에 라이선스를 부여합니다…

4월 30 2024

온라인 결제: 스트리밍 서비스를 통해 영원히 결제하는 방법은 다음과 같습니다.

수백만 명의 사람들이 스트리밍 서비스 비용을 지불하고 월간 구독료를 지불합니다. 당신은…

4월 29 2024