繁体   English   中英

Laravel 8 中的预订日历存在问题

[英]Problem with the booking calendar in Laravel 8

我在 Laravel 8 中的应用程序上的预订日历有问题。我真的需要帮助:(

按下'book'按钮后,会弹出一个错误:

Illuminate\Contracts\Container\BindingResolutionException 目标 class [前端控制器] 不存在。 http://localhost/testowa7/public/makeReservation/26/5

房间刀片:

<form action="{{ route('makeReservation',['room_id'=>$room->id,'city_id'=>$room->object->city->id]) }}" method="POST">
                    <div class="form-group">
                        <label for="dayin">Przyjazd</label>
                        <input required name="dayin" type="text" class="form-control datepicker" id="dayin" placeholder="">
                    </div>
                    <div class="form-group">
                        <label for="dayout">Wyjazd</label>
                        <input required name="dayout" type="text" class="form-control datepicker" id="dayout" placeholder="">
                    </div>
                    <button type="submit" class="btn btn-primary">Rezerwuj</button>
                    <p class="text-danger">{{ Session::get('reservationMsg') }}</p>
                    {{ csrf_field() }}
                </form>

路线:

 Route::post('/makeReservation/{room_id}/{city_id}','FrontendController@makeReservation')->name('makeReservation');

前端控制器:

public function makeReservation($room_id, $city_id, Request $request)
    {

      $avaiable = $this->fG->checkAvaiableReservations($room_id,$request);

      if(!$avaiable)
      {
          if(!$request->ajax())  // niepotrzebne bez apki
          {
            $request->session()->flash('reservationMsg',_('No vanancies'));
            return redirect()->route('room',['id'=>$room_id,'#reservation']);
          }

          return response()->json(['reservation'=>false]);  //niepotrzebne bez apki

      }
      else
      {
        $reservation = $this->fG->makeReservation($room_id,$city_id,$request);

        if(!$request->ajax())
        return redirect()->route('adminHome');
        else
        return response()->json(['reservation'=>$reservation]);

      }
      
    }

前端存储库:

 public function makeReservation($room_id, $city_id, $request)
  {
    return Reservation::create([

      'user_id' => $request->user()->id,
      'city_id' => $city_id,
      'room_id' => $room_id,
      'status' => 0,
      'dayin' => $request->input('dayin'),
      'dayout' => $request->input('dayout'),

    ]);
  }

前端网关:

public function checkAvaiableReservations($room_id,$request)
  {
    $reservations = $this->fR->getReservationsByRoomId($room_id);

    $avaiable = true;

    foreach($reservations as $reservation)
    {
        if( $request->input('dayin') >= $reservation->day_in
          && $request->input('dayin') <= $reservation->day_out
        )
        {
          $avaiable =false;break;
        }
        elseif( $request->input('dayout') >= $reservation->day_in
          && $request->input('dayout') <= $reservation->day_out
        )
        {
          $avaiable =false;break;
        }
        if( $request->input('dayin') >= $reservation->day_in
          && $request->input('dayout') <= $reservation->day_out
        )
        {
          $avaiable =false;break;
        }
    }


    return $avaiable;

  }


  public function makeReservation($room_id, $city_id, $request)
  {
    $this->validate($request, [
      'dayin' => "required|string",
      'dayout' => "required|string",
    ]);

    return $this->fR->makeReservation($room_id, $city_id, $request);
  }

确保将您的FrontendController class 命名空间导入到您的web.php文件中。

确保您的 FrontendController 已正确导入

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM