teratail header banner
teratail header banner
質問するログイン新規登録

質問をすることでしか得られない、回答やアドバイスがある。

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

新規登録して質問してみよう
ただいま回答率
85.30%
Laravel

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

意見交換

クローズ

1回答

398閲覧

LaravelでDBに初期データを登録する方法

tomoyuki123

総合スコア273

Laravel

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

0グッド

0クリップ

投稿2023/10/11 01:05

編集2023/10/11 01:12

0

0

テーマ、知りたいこと

LaravelでのDBにマスタデータを登録するときにどれを使えば良いのか

  • マイグレーション
  • シーダ

背景、状況

今まで自動デプロイ時にphp artisan migrateをしてるので、そのタイミングでマスタデータを入れていました。

しかしそのやり方は一般的なんですか?という質問を受けて調べたのですが、どちらにすべきかという答えが見つかりません。

以下のstackoverflowの質問を見ると色々な意見があるようです。
私はjustamartinさんと同じ意見でデプロイ時に取り込みたいと思っています。

@erin-geyer pointed out that mixing migrations and seeders can create headaches and @justamartin countered that sometimes you want/need data to be populated as part of your deployment.

Populating a database in a Laravel migration file

この辺りどうすべきなのかご意見をください。よろしくお願いします。

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

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

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

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

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

回答1

#1

退会済みユーザー

退会済みユーザー

総合スコア0

投稿2023/10/12 05:20

migrateの後にseedを実行。本番環境ではforceも付ける。

php artisan migrate --force php artisan db:seed --force

デプロイ時に両方実行するのでseedが何度実行されてもいいようにSeederを作っておく工夫が必要。

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

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

最新の回答から1ヶ月経過したため この意見交換はクローズされました

意見をやりとりしたい話題がある場合は質問してみましょう!

質問する

関連した質問