我试图对我正在进行的项目进行排序,我希望得到我的数据库的总条目,然后选择总条目,但按1排序25让我们说..
我的控制器看起来像这样:
$users = User::orderBY('sort', 'DESC')->paginate(10);
return view('admin.user.index', compact('users'));
我的观点如下:
<select class="form-control" id="sort" name="sort">
@foreach($users as $user)
<option value="0">0</option>
@endforeach
</select>
我们说我有25个用户。我希望值中有25个选项,从1到25,因为我无法使用项ID ...因为它们可以被删除。
答案 0 :(得分:1)
您可以尝试:
<select class="form-control" id="sort" name="sort">
@foreach($users as $key => $user)
<option value="{{ $key + 1 }}">
{{ $key + 1 }}
</option>
@endforeach
</select>
答案 1 :(得分:0)
所以你想将选项的值从1设置为总用户数?您只需更新foreach
块即可。
在您的控制器上,获取用户记录:
$users = User::orderBy('sort', 'desc')->get();
return view('admin.user.index', compact('users'));
并更新您的观点:
<select class="form-control" id="sort" name="sort">
@foreach($users as $index => $user)
<option value="{{ $index + 1 }}">{{ $index + 1 }}</option>
@endforeach
</select>
这样,您可以显示一个选项,其值从1到用户总数。
注意,如果您在查看时未真正使用任何用户的属性,则只需获取用户总数。
在您的控制器上,获取用户总数:
$totalUsers = App\Models\User::orderBy('id', 'desc')->count();
return view('test', compact('totalUsers'));
然后像这样更新您的视图:
<select class="form-control" id="sort" name="sort">
@for ($i = 1; $i <= $totalUsers; $i++)
<option value="{{ $i }}">{{ $i }}</option>
@endfor
</select>
希望你回答这个问题。