Я застрял на этом этапе, я много чего проверял и не вижу, что происходит, мне нужно создать сводку бронирования, но я получаю пустые данные из отношений
мои столы:
res_reservations ключ = idReservation
res_reservation_rooms ключ = заставка
отношение в нижней таблице является idReservation
Класс бронирования
namespace Models\OBKE;
use Illuminate\Database\Eloquent\Model;
class Reservation extends Model{
public $timestamps = true;
const CREATED_AT = 'createdDate';
const UPDATED_AT = 'updatedDate';
public $incrementing = false;
protected $table = "res_reservations";
protected $primaryKey = "idReservation";
protected $fillable = ["idReservation",
"resortName",
"programName",
"contract",
"lead",
"booker",
"total",
"idStatus",
"createdBy",
"updatedBy",
"currency",
"front",
"discount",
"pr_code"];
public function rooms(){
return $this->hasMany('\Models\OBKE\Reservation\Rooms',"idReservation","idReservation");
}
}
Бронирование номеров модельного класса
namespace Models\OBKE\Reservation;
use Illuminate\Database\Eloquent\Model;
class Rooms extends Model{
public $timestamps = false;
protected $table = "res_reservation_rooms";
protected $primaryKey = "saver";
protected $fillable= [
"idReservation",
"row",
"date",
"idResort",
"resortName",
"idProgram",
"programName",
"idRoom",
"roomName",
"adults",
"adultsRate",
"juniors",
"juniorsRate",
"kids",
"kidsRate",
"infants",
"infantsRate",
"total",
"discount"];
public function rooms(){
return $this->belongsTo('\Models\OBKE\Reservation',"idReservation","idReservation");
}
}
я пытался называть так же, как другие отношения, но все еще возвращаю массив пустых комнат
мой вопрос о том, что я сделал не так
Это выглядит сбивающим с толку, я предполагаю, что у вас есть комнаты с каждой комнатой, связанной с несколькими бронированиями
В идеале у нас будет две модели,
Модели \ OBKE \ Комнаты
namespace Models\OBKE;
use Illuminate\Database\Eloquent\Model;
class Rooms extends Model{
public function reservations(){
return $this->hasMany('\Models\OBKE\Reservation',"idReservation","idReservation");
}
}
Модели \ OBKE \ Reservation
namespace Models\OBKE;
use Illuminate\Database\Eloquent\Model;
class Reservation extends Model{
public function room(){
return $this-> belongsTo('\Models\OBKE\Rooms',"idReservation","idReservation");
}
}
Сейчас
Models \ OBKE \ Rooms :: get (1) дает вам один объект комнаты
Models \ OBKE \ Rooms :: get (1) -> reservations, предоставляет массив объектов резервирования, связанных с комнатой
Других решений пока нет …