問題タブ [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.
mysql - Laravel 5.1の移行とシードは、外部キー制約で参照されているテーブルを切り捨てることはできません
移行 (以下を参照) を実行してデータベースをシードしようとしていますが、実行すると
次のエラーが表示されます。
このエラーが何を意味するのかを調べたところ、MySQLの使用とその解決策に関連しているだけでも、同じ問題に遭遇している他の人々の例が見つかりましたが、適用されます:
down() 内では機能していないようで、MySQL で describe を実行すると、テーブルが正しく表示されます。
移行には適切な名前が付けられているため、最初に users テーブルが移行され、次に vehicle が移行されるため、外部キーを適用できます。正しく設定されているテーブルは、移行が実行されたことを示していますが、その後エラーが発生します。DBを削除して再作成し、再試行しましたが、同じ結果です。また、データベースの最初の移行とシードで切り詰めようとしている理由もわかりません。php artisan migrate:refresh --seed を実行しようとしたときに発生するとは思いもしませんでした。
laravel-5 - Laravel データベースシーディング
私はlaravelについて学ぼうとしています。次のエラーが発生し続けます。
私が何をした:
ユーザークラス
CreateUserTable の移行:
UserTableSeeder
データベースシーダー
データベースシーダーで、次のことを試しました:
クラスが見つからないことはわかっていますが、その理由を見つけることについて暗闇に残されていますか? 私はグーグルを検索し、他の人がうまくいかなかった他の場所を見つけましたが、同じ間違いをしていないようです. これが本当にばかげた質問ではないことを願っています。
編集*
composer dump-autoload を実行すると、上記のエラーと次の例外トレースが表示されます。
このエラーは、クラスを composer.json ファイルに手動で追加した後に発生しました。
artisan db:seed を php しようとすると、別のエラーが発生します。
php - php artisan db:seedが動作していませんLaravel 5
他の回答を読みましたが、何も解決しませんでした。実行してphp artisan db:seed
も何も起こらず、エラーもスローされません。
これは私の DatabaseSeeder クラスです
BearAppSeeder には以下のコンテンツが含まれています。
実行してみcomposer dump-autoload
ましたが、問題は解決しませんでした。私はLaravelを初めて使用するので、Laravelについてあまり知りません。
laravel-5.1 - Laravel 5.1: ファクトリー/シーダーピボットテーブル
ピボット テーブル用の soem シーダー データを作成しようとしています。以下のコードは、重複エラーが発生する 1 点まで機能します。
これをより適切に行う方法や、重複を起こさないようにこのコードを改善する方法はありますか?
エラーあり
Integrity constraint violation: 1062 Duplicate entry
しかし、まれに合格することもありますが、常に合格するようにしたいと考えています。
これは私のシーダークラスで実行されます
ありがとう
laravel - Laravelファクトリーに引数を渡す方法は?
テーブルと、users
テーブルとの 1 対 0/1 の関係がありbusinesses
ます (users.user_id => business.user_id)。私のusers
テーブルには、ユーザーのタイプがビジネスであるかどうかを示す識別子があるため、businesses
テーブルにも詳細が必要です。
現在稼働している工場でユーザーを作成し、識別子がビジネス アカウントを指すビジネスの詳細のみを作成したいと考えています。
私には次の 3 つの選択肢があります。
- ユーザー ファクトリから作成し、'->each()' を使用してディスクリミネータをチェックし、ファクトリを使用して新しいビジネス ユーザーを作成します。
user_id
しかし、ユーザーが割り当てられた 業務工場に渡すことができません。 - 最初にユーザーを作成します。次に、ビジネス シーダーで、「ビジネス」識別子に一致するすべてのユーザーを取得します。次に、これらすべてのユーザーに対して、ビジネスの詳細を作成するファクトリを実行します。
user_id
しかし、繰り返しになりますが、すでに作成されているユーザーを何らかの方法でビジネス ファクトリにリンクする必要がありますuser_id
。 - 私のビジネス ファクトリでは、新しいユーザーを作成し、ID を取得して、 と の間のリンクを作成し
users.user_id
ますbusiness.user_id
。ただし、ランダムジェネレーターを使用しているuser.user_type
ため、businesses
テーブルがいっぱいになっていても、識別子が「個人用」であるユーザー向けである可能性があります。
別の方法はありますか?Seeder からファクトリに引数を渡すことはできますか?
php - Laravel 5: クラス 'Illuminate\Database\Seeder' が見つかりません
私が現在直面している問題はすでにここに投稿されていますが、どれも私の問題を解決できませんでした。
のようなURLの下にあるデータベースシーダーについて話していますhttp://HOSTNAME/laravelfiles/database/seeds/UsersTableSeeder.php
。その内容は次のとおりです。
このファイルを (コードの上に指定された URL で) 直接開くと、次のエラーが出力されます。
Fatal error: Class 'Illuminate\Database\Seeder' not found in /var/www/laravelfiles/database/seeds/UsersTableSeeder.php on line 6
可能な解決策を見つけました。私にはうまくいきません:
composer dump-autoload
注: 上記のコードでも同じエラーが発生します。
laravel-4 - Laravel 4 データベース挿入エラー - preg_replace(): パラメータが一致しません。パターンは文字列ですが、置換は配列です
データベース シーダーでは、ハードコードされたデータをテーブルに挿入したいだけです。
ただし、エラーが発生しました:
[ErrorException] preg_replace(): パラメータが一致しません。パターンは文字列ですが、置換は配列です
私は別のテーブルに同じことをしたので、それはうまくいきました。
プロジェクト テーブルへの挿入が機能する理由が本当にわかりませんが、マッピング テーブルの 1 つが機能しません。それらはまったく同じ方法です。