[英]How do I fetch a radom row from the database and display the same row to all the users in laravel?
有没有办法从表中获取随机行并向所有用户显示同一行? 我知道我可以使用 random() 方法来获取行,但是如何向所有用户显示同一行。
这是我的 Controller:-
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Database\Query\Builder::inRandomOrder;
use App\Nothingness;
class NothingnessController extends Controller
{
public function randomQuestion()
{
$seed = Carbon::now()->toISOString();
Nothingness::inRandomOrder($seed)->first();
return view('home', compact('seed'));
}
}
这是一个新的 laravel 项目
使用Illuminate\Database\Query\Builder::inRandomOrder
方法并为其提供种子。
种子确保结果对相同种子的排序相同。
以下是一个查询,每个人在一天中的同一分钟查看相同的记录。
<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use Illuminate\Support\Carbon;
use App\Nothingness;
class NothingnessController extends Controller
{
public function randomQuestion()
{
$seed = Carbon::now()->format('Y-m-d H:i');
$randomNothing = Nothingness::inRandomOrder($seed)->first();
return view('home', compact('randomNothing'));
}
}
您也可以让种子来自外部来源。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.