問題タブ [laravel-seeding]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
4403 参照

php - laravel ファクトリーモデルが見つかりません

私はlaravelについてもっと知るためにすべてを備えた新しいプロジェクトを作成しようとしています.今のところ、工場でモデル、移行、シードを作成していて、この問題に遭遇しています:

モデル ユーザー

モデルアカウントのステータス

シード ファイル:

工場ファイル:

artisan で db シードを試行する場合:

すでに composer dump-autoload 、optimize を試しており、App\Models のフォルダーにモデルがあります。

アカウントステータスのファクトリーのシードは機能しますが、両方(アカウントステータスとユーザー)で実行しようとするとエラーが発生します)誰もが理由を知っていますか?すべてのファクトリ コードを 1 つのファイルに含めることをお勧めしますか?

0 投票する
1 に答える
231 参照

php - mcrypt_decrypt が Laravel シードで使用された場合にのみ正しいデータを返さない

Windows上のPHP 7.0の下で、Laravel 5.3に組み込まれたデータベースシードを使用しています。問題は、mcrypt_encrypt を使用してデータを暗号化するたびに、mcrypt_decrypt から返されるデータが、渡したものと同じではないことです。

この場合、$data はバイナリ文字列であり、元の文字列ではありません。

  • これは、播種中にのみ発生します。mcrypt_encrypt/mcrypt_decrypt は、Web リクエストまたはティンカーを通じて機能します。
  • 非推奨であることはわかっています。最近の暗号化 ( https://laravel.com/docs/5.3/encryption ) とは対照的に、mcrypt_encrypt を使用する必要があります。mcrypt_encrypt を使用して既に暗号化されたレガシー データがあるためです。
  • $key は、暗号化キーからロードされる静的変数です
  • これは、問題を示すエラーや警告ではありません

ここで何が起こっているのか、誰にも分かりますか?

0 投票する
0 に答える
1589 参照

mysql - .sql ファイルを使用した Laravel シーダー

テーブルに 30K のレコードを挿入したいと考えています。同じテーブルの .sql ファイルがあり、laravel シーダーを使用したいと考えています。

338行を挿入するだけです。338 を挿入した後はどうなりますか? この問題を解決するにはどうすればよいですか?

0 投票する
1 に答える
669 参照

laravel - Laravel 5.3通知シーダー

私が達成しようとしているのは、Laravel通知用のデータベースシーダーを作成することです。データベースを使用して通知を保存している限り、それを達成する方法があるはずです。私は工場モデルを作成しています:

実際にはデータベースに通知を作成しますが、職人はエラーを返します

誰が何をすべきか知っていますか?

0 投票する
1 に答える
2085 参照

php - ルーメン データベースのシード エラー

LaravelのLumenフレームワークを使ったバックエンド開発を学んでおり、Laravelのドキュメンテーションに従ってデータベースシードクラスを書いています。以下にコードを示します。

モデルapp\Photo.php

モデル工場database\factories\ModelFactory.php

DatabaseSeederPhotoTableSeederクラスdatabase\seeds\DatabaseSeeder.php

以前は、MySQL データベースのテーブル名は次のとおりでした。photos次のコマンドを使用すると、シードが完全に機能しphp artisan db:seedます。

シード済み: PhotoTableSeeder

しかし、テーブル名を に変更しphotoて同じコマンドを実行すると、次のエラーが発生しました。

[Illuminate\Database\QueryException] SQLSTATE[42S02]: ベース テーブルまたはビューが見つかりません: 1146 テーブル 'homestead.photos' が存在しません (SQL: `photos` に挿入 (`link`, `category_id`, `date` ) 値 ( https://placehold.it/259、3、2012-05-28))

[PDOException] SQLSTATE[42S02]: ベース テーブルまたはビューが見つかりません: 1146 テーブル 'homestead.photos' が存在しません

古いテーブル名がまだ呼び出されている理由がわかりません。どこかに保存されていたのか、何か抜けているのか、エラーの原因がわかりません。

0 投票する
7 に答える
30656 参照

php - laravel テスト用のデータベース移行をシードする方法は?

Laravel のドキュメントDatabaseMigrationsでは、テスト間でデータベースを移行およびロールバックするためにトレイトを使用することを推奨しています。

ただし、テストで使用したいシード データがいくつかあります。私が実行した場合:

その後、最初のテストでは機能しますが、その後のテストは失敗します。これは、トレイトが移行をロールバックし、移行を再度実行するときにデータベースをシードしないためです。移行でデータベース シードを実行するにはどうすればよいですか?