Bonjour à tous,
Je continue dans ma liste de questions Laravel au niveau des relations entre différentes tables.
J'arrive à établir une relation hasMany tant au niveau du controlleur que de la vue.
Exemple dans mon modèle House, une maison à plusieurs réservations (booking):
Dans mon controlleur :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 class House extends Model { public function bookings() { return $this->hasMany('App\booking'); } }
Dans ma vue :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 public function index() { $bookings = House::find(1)->bookings; return view('admin/bookings.index', compact('bookings')); }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 @foreach ($bookings as $booking) <tr> <td>{{ $booking->house->name }} </td> <td>{{ $booking->arrival }}</td> </tr> @endforeach
Par contre là où je ne comprend pas comment faire c'est lorsque j'ai plusieurs relations de tables à afficher dans ma vue.
Par exemple une réservation (booking) appartient à un client (customer).
Je dois donc créer une relation belongsTo dans le modèle Booking comme ceci:
Mais comment dois-je faire pour l'intégrer dans mon controleur à ceci ? :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 class Booking extends Model { public function customer(){ return $this->belongsTo('App\Customer'); } }
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 $bookings = House::find(1)->bookings; return view('admin/bookings.index', compact('bookings'));
Merci pour votre aide![]()
Partager