🎄teratailクリスマスプレゼントキャンペーン2024🎄』開催中!

\teratail特別グッズやAmazonギフトカード最大2,000円分が当たる!/

詳細はこちら
Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

Q&A

解決済

1回答

2603閲覧

Laravel 8 シーダーとファクトリーでテストデータ用意したい

akito-miyazato

総合スコア5

Laravel

LaravelとはTaylor Otwellによって開発された、オープンソースなPHPフレームワークです。Laravelはシンプルで表現的なシンタックスを持ち合わせており、ウェブアプリケーション開発の手助けをしてくれます。

PHP

PHPは、Webサイト構築に特化して開発されたプログラミング言語です。大きな特徴のひとつは、HTMLに直接プログラムを埋め込むことができるという点です。PHPを用いることで、HTMLを動的コンテンツとして出力できます。HTMLがそのままブラウザに表示されるのに対し、PHPプログラムはサーバ側で実行された結果がブラウザに表示されるため、PHPスクリプトは「サーバサイドスクリプト」と呼ばれています。

0グッド

0クリップ

投稿2021/03/23 02:05

シーダーとファクトリーでテストデータ用意したいです。
(Laravel 8.33.1)

しかし下記のようなエラーが出てしまいます。
どなたか分かる方がいましたら、教えていただきたいです。

宜しくお願い致します。

エラーメッセージ

Seeding: Database\Seeders\BlogsTableSeeder Symfony\Component\ErrorHandler\Error\FatalError Trait 'App\Models\HasFactory' not found at app/Models/Blog.php:9 5▕ use Illuminate\Database\Eloquent\Model; 6▕ 7▕ class Blog extends Model 8▕ { ➜ 9▕ use HasFactory; 10▕ // テーブル名 11▕ protected $table = 'blogs'; 12▕ 13▕ // 可変項目 Whoops\Exception\ErrorException Trait 'App\Models\HasFactory' not found at app/Models/Blog.php:9 5▕ use Illuminate\Database\Eloquent\Model; 6▕ 7▕ class Blog extends Model 8▕ { ➜ 9▕ use HasFactory; 10▕ // テーブル名 11▕ protected $table = 'blogs'; 12▕ 13▕ // 可変項目 +1 vendor frames 2 [internal]:0 Whoops\Run::handleShutdown()

blog/database/seeders/BlogTableSeeder.php

<?php namespace Database\Seeders; use Illuminate\Database\Seeder; use App\Models\Blog; class BlogsTableSeeder extends Seeder { /** * Run the database seeds. * * @return void */ public function run() { \App\Models\Blog::factory()->count(15)->create(); } }

blog/database/factories/BlogFactory.php

<?php namespace Database\Factories; use App\Models\Blog; use Illuminate\Database\Eloquent\Factories\Factory; class BlogFactory extends Factory { /** * The name of the factory's corresponding model. * * @var string */ protected $model = \App\Models\Blog::class; /** * Define the model's default state. * * @return array */ public function definition() { return [ 'title' => $this->faker->word, 'content' => $this->faker->realText ]; } }

blog/database/seeders/DatabaseSeeder.php

<?php namespace Database\Seeders; use Illuminate\Database\Seeder; class DatabaseSeeder extends Seeder { /** * Seed the application's database. * * @return void */ public function run() { $this->call (BlogsTableSeeder::Class); } }

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

hentaiman

2021/03/23 02:38

質問した内容ひとつひとつ順に解決してくことを勧めますよ わざわざ付き合って回答してくれてるのは赤の他人なんで
guest

回答1

0

ベストアンサー

use Illuminate\Database\Eloquent\Factories\HasFactory;
がModels\Blogに足りない

投稿2021/03/23 03:19

mikkame

総合スコア5036

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

akito-miyazato

2021/03/23 04:26

できました!本当にありがとうございます!!
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.36%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問