Ответ json с 2 таблицами в Laravel 5.6 - PullRequest
0 голосов
/ 31 мая 2018

почему мой код получает ошибку

  public function AuditorBagian_Edit($nopek)
  {

    $user = User::where('nopek', '=', $nopek)->get();
    $bagian_user = Bagian::all()->where('kode_bagian', '=', $user->bagian)->get();

    return response()->json($bagian_user);

  }

Я хочу показать данные из Bagian

Ответы [ 3 ]

0 голосов
/ 31 мая 2018

Вы можете передать коллекцию или массив в функцию response () -> json () , которая будет преобразована в JSON data

 public function AuditorBagian_Edit($nopek)
          {

            $user = User::where('nopek', '=', $nopek)->get();
            $bagian_user = Bagian::where('kode_bagian', '=', $user->bagian)->get();
    // or $bagian_user = Bagian::where('kode_bagian', '=', $user->bagian)->get()->toArray();

            return response()->json($bagian_user);

          }
0 голосов
/ 01 июня 2018

Просто удалите :: all (), все () и get () ведут себя одинаково.

Не берите, что all (), get (), first () - это последний шаг для получения данных модели, условие и with () и ordering () и т. Д. Должны произойти до того, как все три вышеупомянутых

0 голосов
/ 31 мая 2018

Результат ошибки кода

$bagian_user = Bagian::all()->where('kode_bagian', '=', $user->bagian)->get();

Bagian::all() возвращает экземпляр Illuminate\Database\Eloquent\Collection и находит все записи в дБ, затем вы пытаетесь отфильтровать ->where('kode_bagian', '=', $user->bagian)->get() специфичныезаписи, но этот код неправильный, потому что метод where() класса Illuminate\Database\Eloquent\Collection возвращает экземпляр класса Illuminate\Database\Eloquent\Collection, и этот класс не имеет get() метода.

User::where('nopek', '=', $nopek)->get() также возвращает экземпляр Illuminate\Database\Eloquent\Collection.Чтобы получить одну запись, используйте метод first() вместо get()

Правильный способ получения результата:

$user = User::where('nopek', '=', $nopek)->first();

if(!empthy($user)) {
    $bagian_user = Bagian::where('kode_bagian', '=', $user->bagian)->get().
}

Отредактировано, формат php code

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