Je suis nouveau dans laravel. Peut-être que la question ne correspond pas au problème. Le problème est le suivant. J'ai une table de base de données de un à plusieurs comme hôtel et chambre. Un hôtel peut avoir plusieurs chambres. Mon objectif est le suivant :
public function edit($id) {
echo $id;
// get the hotel
$data['hotel'] = Hotel::find($id);
$data['rooms'] = Room::where("hotelId", $id)->get();
// show the edit form and pass the hotel
return view('include.middle')->nest('main', 'hotel.edithotel', $data);
}
Je récupère les données de la table de la chambre et de l'hôtel. Il peut y avoir plusieurs chambres.
En vue. Je veux obtenir toutes les données à éditer pour l'hôtel et la chambre.
editHotel.blade.php
//for hotel
{{ Form::model($hotel, array('route' => array('hotel.update', $hotel->hotelId), 'method' => 'PUT')) }}
//for room. I want to run this in loop so that I can get data to edit for multiple rooms.
{{ Form::model($rooms, array('route' => array('room.update', $rooms->roomId), 'method' => 'PUT')) }}
Mais j'obtiens l'erreur suivante
Undefined property: Illuminate\Database\Eloquent\Collection::$roomId (View: /Users/apple/hotelbooking/resources/views/hotel/edithotel.blade.php)
J'ai défini des clés primaires dans le modèle de chambre et d'hôtel.
Schéma de la base de données.
Hotel
hotelId | name | address
1 | example hotel somewhere
Room
roomId | hotelId | name | price
1 1 Delux $300
2 1 Economy $100