ホームページ  >  に質問  >  本文

Sequenceで作成するオブジェクトの数を調整する方法(Laravel8)

<p>Seeder と Factory を使用して 30 件のニュース項目を作成しようとしています。ただし、null 以外のフィールド値 <code>published_at</code>(Carbon) を持つ 10 個のニュース項目と、ランダムな値 (Carbon/NULL) を持つ他のニュース項目を作成する必要があります。 </p> <p>ドキュメントには、この例があり、値が <code>admin (Y)</code> のレコードが 5 つ作成され、値が <code> admin(N) のレコードが 5 つ作成されています。 )</コード>。 </p> <pre class="brush:php;toolbar:false;">User::factory() ->カウント(10) ->state(新しいシーケンス( ['管理者' => 'Y'], ['管理者' => 'N'], )) ->create(); <p>これまでのところ、このコードを使用していますが、特定のパラメータ値 <code>published_at</code> を持つレコードの数を追加する方法がわかりません。たとえば、10 項目には Carbon を使用し、20 項目には NULL を使用します。 </p> <pre class="brush:php;toolbar:false;">/**記事シーダー*/ 記事::ファクトリー() ->カウント(30) ->state(new シーケンス([ 'published_at' => Factory::create()->dateTimeBetween( now()->startOfMonth()、 now()->endOfMonth() )、 ])) ->create();</pre></p>
P粉043566314P粉043566314434日前520

全員に返信(1)返信します

  • P粉957723124

    P粉9577231242023-09-05 00:50:01

    シーケンス クロージャでは、これまでのシーケンスの反復回数を含む $index プロパティにアクセスできます。

    以下は、望ましい結果を達成するために使用できる最も単純なロジックです。

    リーリー

    返事
    0
  • キャンセル返事