Laravel orderBy 在执行 dd 时工作,但在 table 中不工作
Laravel orderBy working while doing dd but not in table while fetching
进入我的 laravel 应用程序,同时我通过预加载顺序获取数据,通过在 dd 中显示正确的数据格式,即 DESC 格式的数据,但是当我压缩数据并试图显示它时在 blade 中,它以 ASC 格式显示数据...
我的控制器
public function index(Request $request)
{
$data = Rate::with('hospital')->orderBy('id','DESC')->get();
// dd($data );
return view('admin.rates.index',compact('data'));
}
我的blade文件
<table id="example1" class="table table-bordered table-striped">
<thead>
<tr>
{{-- <th>No</th> --}}
<th>Hospital</th>
<th>Contract Date</th>
<th class="text-center">Contract Length (weeks)</th>
<th>Weekly</th>
<th>Hourly</th>
<th>Others</th>
{{-- <th>Status</th> --}}
<th>Action</th>
</tr>
</thead>
<tbody>
<?php $i=0; ?>
@foreach ($data as $key => $rate)
<tr>
{{-- <td>{{++$i}}</td> --}}
<td>
{{ ucwords($rate->hospital->short_name) }}
</td>
<td>
{{date('m/d/Y',strtotime($rate->contract_date))}}
</td>
<td class="text-center">
{{ $rate->contract_duration}}
</td>
<td class="text-right">
{{ ($rate->weekly_rate != '') ? $rate->weekly_rate : '' }}
</td>
<td class="text-right">
{{ ($rate->hourly_rate != '') ? $rate->hourly_rate : '' }}
</td>
<td class="text-right">
{{ ($rate->others_rate != '') ? $rate->others_rate : '' }}
</td>
{{-- <td>
</td> --}}
<td>
@if ($rate->status=='inactive')
<a href="javascript:void(0);" id="status_button_{{$rate->id}}" onclick="return confirm('Are you sure you want to change')" class="status_button btn btn-sm btn-danger" data-id="{{$rate->id}}" data-url="/admin/rate_status/{{$rate->id}}"> <i class="fas fa-times"></i></a>
@else
<a href="javascript:void(0);" id="status_button_{{$rate->id}}" onclick="return confirm('Are you sure you want to change')" class="status_button btn btn-sm btn-success" data-id="{{$rate->id}}" data-url="/admin/rate_status/{{$rate->id}}"> <i class="fas fa-check"></i></a>
@endif
<a class="btn btn-sm btn-info" href="{{ route('rate.edit',$rate->id) }}"><i class="fas fa-edit"></i></a>
<a class="btn btn-sm btn-danger" onclick="return confirm('Are you sure you want to delete')" href="{{ route('rate.destroy',$rate->id) }}"><i class="fas fa-trash"></i></a>
</td>
</tr>
@endforeach
</tbody>
</table>
里面没有更多内容,但我的问题是为什么数据没有以 DESC 格式显示???我还在下面粘贴了我的 dd 图片,您可以看到第一个数据的 ID 为 8,第二个数据的 ID 为 7,这是完全正确的,但是为什么先获取 ID 7 呢??
当您使用数据表时,如果未使用序列号,它会尝试按最接近的字母顺序对数据进行过滤或排序。我看到您已关闭序列号标签,请不要尝试打开它并检查结果。我很确定这是由于这个原因...只需尝试将 "ordering": false
用于您的数据表函数..
进入我的 laravel 应用程序,同时我通过预加载顺序获取数据,通过在 dd 中显示正确的数据格式,即 DESC 格式的数据,但是当我压缩数据并试图显示它时在 blade 中,它以 ASC 格式显示数据...
我的控制器
public function index(Request $request)
{
$data = Rate::with('hospital')->orderBy('id','DESC')->get();
// dd($data );
return view('admin.rates.index',compact('data'));
}
我的blade文件
<table id="example1" class="table table-bordered table-striped">
<thead>
<tr>
{{-- <th>No</th> --}}
<th>Hospital</th>
<th>Contract Date</th>
<th class="text-center">Contract Length (weeks)</th>
<th>Weekly</th>
<th>Hourly</th>
<th>Others</th>
{{-- <th>Status</th> --}}
<th>Action</th>
</tr>
</thead>
<tbody>
<?php $i=0; ?>
@foreach ($data as $key => $rate)
<tr>
{{-- <td>{{++$i}}</td> --}}
<td>
{{ ucwords($rate->hospital->short_name) }}
</td>
<td>
{{date('m/d/Y',strtotime($rate->contract_date))}}
</td>
<td class="text-center">
{{ $rate->contract_duration}}
</td>
<td class="text-right">
{{ ($rate->weekly_rate != '') ? $rate->weekly_rate : '' }}
</td>
<td class="text-right">
{{ ($rate->hourly_rate != '') ? $rate->hourly_rate : '' }}
</td>
<td class="text-right">
{{ ($rate->others_rate != '') ? $rate->others_rate : '' }}
</td>
{{-- <td>
</td> --}}
<td>
@if ($rate->status=='inactive')
<a href="javascript:void(0);" id="status_button_{{$rate->id}}" onclick="return confirm('Are you sure you want to change')" class="status_button btn btn-sm btn-danger" data-id="{{$rate->id}}" data-url="/admin/rate_status/{{$rate->id}}"> <i class="fas fa-times"></i></a>
@else
<a href="javascript:void(0);" id="status_button_{{$rate->id}}" onclick="return confirm('Are you sure you want to change')" class="status_button btn btn-sm btn-success" data-id="{{$rate->id}}" data-url="/admin/rate_status/{{$rate->id}}"> <i class="fas fa-check"></i></a>
@endif
<a class="btn btn-sm btn-info" href="{{ route('rate.edit',$rate->id) }}"><i class="fas fa-edit"></i></a>
<a class="btn btn-sm btn-danger" onclick="return confirm('Are you sure you want to delete')" href="{{ route('rate.destroy',$rate->id) }}"><i class="fas fa-trash"></i></a>
</td>
</tr>
@endforeach
</tbody>
</table>
里面没有更多内容,但我的问题是为什么数据没有以 DESC 格式显示???我还在下面粘贴了我的 dd 图片,您可以看到第一个数据的 ID 为 8,第二个数据的 ID 为 7,这是完全正确的,但是为什么先获取 ID 7 呢??
当您使用数据表时,如果未使用序列号,它会尝试按最接近的字母顺序对数据进行过滤或排序。我看到您已关闭序列号标签,请不要尝试打开它并检查结果。我很确定这是由于这个原因...只需尝试将 "ordering": false
用于您的数据表函数..