Я уловил проблему
DB::table('destinations as d')
->select('d.*','f.flight_id as flightId','f.flight_number','f.departure','f.arrival','f.air_line','f.air_port','f.stops')
->leftJoin('flights as f','d.flight_id','=','f.flight_id')
->whereNull(['d.deleted_at', 'f.deleted_at'])
->paginate(20);
Я должен различаться между destination.flight_id
и flight.flight_id
, потому что они имеют одинаковое имя, добавляя select()
, но не это Точная проблема, проблема с соединением должно быть левое соединение , и вот некоторые данные, которые я получаю в качестве примера:
}
3 => {#500 ▼
+"destination_id": 33
+"name": "USA"
+"flight_id": 3
+"type": "FLIGHT"
+"status": "ACTIVE"
+"created_at": "2020-01-27 14:41:17"
+"updated_at": "2020-01-27 14:41:17"
+"deleted_at": null
+"flightId": 3
+"flight_number": "#A205"
+"departure": "2020-01-27 01:00:00"
+"arrival": "2020-01-31 01:00:00"
+"air_line": "sss"
+"air_port": "zzz"
+"stops": 2
}
4 => {#1011 ▼
+"destination_id": 34
+"name": "BEA"
+"flight_id": null
+"type": "REGION"
+"status": "ACTIVE"
+"created_at": "2020-01-27 14:42:57"
+"updated_at": "2020-01-27 14:42:57"
+"deleted_at": null
+"flightId": null
+"flight_number": null
+"departure": null
+"arrival": null
+"air_line": null
+"air_port": null
+"stops": null
}