Laravel кратно где предложение возвращает только одну строку - PullRequest
0 голосов
/ 18 февраля 2020

Привет, у нас есть следующая таблица

+--------------+--------------+----------------+----------------+
| student_name | student_city | student_stream | student_budget |
+--------------+--------------+----------------+----------------+
| Student A    |            2 |              3 |              8 |
| Student B    |            5 |              8 |              9 |
| Student C    |            7 |              7 |              7 |
+--------------+--------------+----------------+----------------+

Теперь мы применяем фильтры, чтобы получить всех студентов с фильтром для student_city, student_stream и student_budget, вот наш следующий запрос в laravel eloquent

$getStudents = Student::select('student_name ','student_stream','student_city','student_budget');

if($request->budget != 0) {

      $getStudents->whereBetween('student_budget', [$getData['getBudget'][0], $getData['getBudget'][1]]);

 }

 if($request->city != 0) {

       $getStudents->whereIn('student_city', explode(',', $request->city));

 }

 if($request->stream != 0) {

       $getStudents->where('student_stream', $request->stream);

 }

 $result = $getStudents->get();

проблема

Иногда результат возвращает только 1 запрос, в то время как обычный запрос возвращает правильное количество строк! может кто-нибудь сказать, в чем может быть проблема

URL-адрес фильтра

/ для вас / город / 129,17 / поток / 8 / бюджет / 4-8

  • 129,17 - идентификатор города
  • 8 - идентификатор потока
  • 4 - 8 - бюджет
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...