如何调整Sequence(Laravel 8)中创建的对象数量
<p>我正在尝试使用Seeder和Factory创建30条新闻。但我需要创建10条具有非空字段值<code>published_at</code>(Carbon)的新闻,而其他新闻则具有随机值(Carbon/NULL)。</p>
<p>在文档中,我看到了这样一个例子,它创建了5条记录,值为<code>admin (Y)</code>,以及另外5条记录,值为<code>admin (N)</code>。</p>
<pre class="brush:php;toolbar:false;">User::factory()
->count(10)
->state(new Sequence(
['admin' => 'Y'],
['admin' => 'N'],
))
->create();</pre>
<p>到目前为止,我使用了这段代码,但我无法弄清楚如何添加具有特定参数值<code>published_at</code>的记录数量。例如,10条使用Carbon,20条使用NULL。</p>
<pre class="brush:php;toolbar:false;">/**文章播种者*/
Article::factory()
->count(30)
->state(new Sequence([
'published_at' => Factory::create()->dateTimeBetween(
now()->startOfMonth(),
now()->endOfMonth()
),
]))
->create();</pre></p>