Files
AWA/laravel/app/Http/Controllers/BilletController.php
2025-06-10 18:04:57 +02:00

71 lines
1.7 KiB
PHP

<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
use App\Models\Billet;
use App\Http\Resources\BilletResource;
use App\Http\Resources\BilletsResource;
use Illuminate\Support\Facades\Log;
class BilletController extends Controller
{
/**
* Display a listing of the resource.
*/
public function index()
{
try {
// Le résultat de la requête est retourné directement en JSON.
// return Billet::all();
return BilletsResource::collection(Billet::all());
} catch (\Illuminate\Database\QueryException $e) {
Log::channel('projectLog')->error('Erreur accès base de données');
return response()->json([
'message' => 'Ressource indisponible.',
'raison' => $e->getMessage(),
], 500);
}
}
/**
* Store a newly created resource in storage.
*/
public function store(Request $request)
{
//
}
/**
* Display the specified resource.
*/
public function show($id) {
try {
return new BilletResource(Billet::with('commentaires', 'commentaires.user')->findOrFail($id));
}
catch (\Illuminate\Database\QueryException $e) {
Log::error('Erreur accès base de données');
return response()->json([
'message' => 'Ressource indisponible.',
], 500);
}
}
/**
* Update the specified resource in storage.
*/
public function update(Request $request, string $id)
{
//
}
/**
* Remove the specified resource from storage.
*/
public function destroy(string $id)
{
//
}
}