Я новичок в Laravel и хочу создать API. Я просто хочу узнать, как создать ответ JSON, подобный этому
JSON RESPONSE:
[
{ //THIS IS MODEL FOR Industry
id: "1",
value: "Accounting / Finance
sectors: [ //THIS IS MODEL FOR Sectors
{
id: "1", //sector_id AS id
value: "Accounting"
},
{
id: "3",
value: "Finance"
}
],
id: "2",
value: "Audit / Tax"
sectors: [
{
id: "4",
value: "Audit"
},
{
id: "5",
value: "Tax"
}
]
}
]
База данных в моих отраслях содержит
| id | value |
| 1 | Accounting/Finance |
| 2 | Audit/Tax |
пока моя база данных в industry_sectors содержит
| sector_id | industry_id | name |
| 1 | 1 | Accounting |
| 3 | 1 | Finance |
| 4 | 2 | Audit |
| 5 | 2 | Tax |
Ниже приведен мой частичный код для моделей.
МОДЕЛИ
Industries.php
namespace App\Models;
use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable;
class Industries extends Authenticatable
{
use Notifiable;
/**
* The attributes that are mass assignable.
*
* @var array
*/
public $primaryKey = 'id';
public $table = 'industries';
public $timestamps = false;
protected $guarded = [];
}
IndustrySectors.php
namespace App\Models;
use Illuminate\Notifications\Notifiable;
use Illuminate\Foundation\Auth\User as Authenticatable;
class IndustrySectors extends Authenticatable
{
use Notifiable;
/**
* The attributes that are mass assignable.
*
* @var array
*/
public $primaryKey = 'sector_id';
public $table = 'industry_sectors';
public $timestamps = false;
protected $guarded = [];
}
Я хочу использовать API в качестве метода GET, и это мой частичный код, но он просто печатает всю базу данных в формате json в таблице Industry Sectors.
public function getIndustry(){
$flight = IndustrySectors::all();
return response()->json($flight);
}