首页 > 解决方案 > 我如何检查是否存在变量 laravel?

问题描述

我有这个观点我试图通过$reservations当数据库中有一些保留时没有错误但是当它为空时我得到错误

未定义变量:reservations(查看:C:\Users\yass\Desktop\E-tourisme-44\E-tourisme-5554\resources\views\moderateur\reservation.blade.php)

模板

<tbody>
                        @if($reservations )

                        @foreach($reservations as $reservation)

                            <tr>      
                                <td> {{$reservation->children}} </td>
                                <td> {{$reservation->checkin}} </td>
                                <td> {{$reservation->checkout}} </td>
                                <td>

                        @endforeach
                       @else
                                    <div>
                                       No Data
                                    </div>
                            @endif

                        </tbody>

这是我的功能

public function index()
{
    $myhotels = hotel::where('created_by', Auth::user()->id)->first();
    if ($myhotels) {
        $reservations = Reservation::where('hotel_id', $myhotels->id)->get();
        return view('moderateur/reservation', compact('reservations'));
    }
    return view('moderateur/reservation');
}

标签: laravellaravel-7

解决方案


为了使您的代码工作,而不是

@if($reservations )

采用

@if(! empty($reservations))

@if也可以考虑使用而不是结合@foreach用于显示“无数据” @forelse @empty。文档:https ://laravel.com/docs/7.x/blade#loops


推荐阅读