Laravel: невозможно получить данные GET с помощью запроса - PullRequest
0 голосов
/ 21 апреля 2020

Следующий код работает не так, как я ожидал:

public function cargar_atracciones(Request $request, $id){
  if($request->ajax()){
    $locales = Local::find($id);
    $attractions = Attraction::take($request->get('num'))->where('local_id', $id)->where('estado', 1)->get();

    $atracciones = Attraction::where('estado', 1)->where('local_id', $id)->get();
    $contador = count($atracciones);
    if($contador > $request->get('num')){$var = true;}else{$var = false;} //should be set to false when
// there are no more attractions to show (requested attractions >= total number of attractions in DB)

    return response()->json(['attractions' => $attractions, 'locales' => $locales, 'var' => $var]);
  }

Этот код взят из файла моего контроллера, он должен получить 'num' из запроса (кнопка «загрузить еще»), вытащить аттракционы из БД и отправлять данные обратно в скрипт, чтобы он мог рисовать их на http.

'var' используется для установки CSS свойства отображения кнопки «загрузить еще» на «нет», когда нет достопримечательностей осталось рисовать в БД.

Проблема в том, что 'var' всегда возвращает true, независимо от того, превышает ли переданное 'num' общее количество аттракционов в БД.

Я проверял он много раз и не мог понять.

Может ли кто-нибудь пролить свет на то, почему он так себя ведет?

РЕДАКТИРОВАТЬ:

Сравнение не работает, как ожидалось из-за $request->get('num'), который возвращает null

Далее, dd($request->all()) возвращает:

array:1 [ "/cargar-mas-atracciones/1" => null ]

Это мой ajax запрос:

function carga_mas(id){
    event.preventDefault();
    // console.log(id);
      $('.rotar_icono').addClass("rotate");

      $num = $num + 2;
      var route = site_url+'cargar-mas-atracciones/'+id;
      $.ajax({
        url: route,
        data : {num:$num},
        type : 'GET',
        dataType: 'json',
        contentType: 'application/json',
        success : function(response){
          // console.log(response);
          cargar__atracciones(response);
        }
      });
  }

Похоже, сервер игнорирует GET-данные, есть идеи?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...