Php Laravel工厂用户id始终为空
当尝试在工厂中获取随机用户id时,它总是返回Php Laravel工厂用户id始终为空,php,laravel,laravel-migrations,laravel-6,Php,Laravel,Laravel Migrations,Laravel 6,当尝试在工厂中获取随机用户id时,它总是返回null,尽管数据库包含50个用户(通过user工厂创建) 我尝试显示检索到的资源,执行以下操作: dd(User::all()->random()) 结果与预期相当一致 但另一种方法是: dd( User::all()->random()->id ) 始终返回null请记住,使用该方法,您将加载内存中的所有记录,然后随机选择一个以获取随机对象 您可以改进直接从数据库随机查询一条记录的方法: $randomUser = User:
null
,尽管数据库包含50
个用户(通过user
工厂创建)
我尝试显示检索到的资源,执行以下操作:
dd(User::all()->random())
结果与预期相当一致
但另一种方法是:
dd( User::all()->random()->id )
始终返回
null
请记住,使用该方法,您将加载内存中的所有记录,然后随机选择一个以获取随机对象
您可以改进直接从数据库随机查询一条记录的方法:
$randomUser = User::inRandomOrder()->first();
你试过这样吗<代码>dd((用户::all()->random())->id)尝试将随机用户分配给变量,然后提取ID,但无效$randomUser=User::inRandomOrder()->first();echo dd($randomUser->id);检查你的模型。您的
$hidden
配置中可能包含id
字段。更多信息。好的,我发现了问题,我用它来加密用户电子邮件,但是很明显,加密特性阻止了整个模型的工作。我不明白你的问题与你的实际问题不同。
dd( User::all()->random()->id )
$randomUser = User::inRandomOrder()->first();