Как получить результаты на основе выбранных полей.если car_type был выбран, чтобы получить автомобиль, если audi был выбран, чтобы получить только модели для audi.Пример выбора пользователем car_type Car, get Marks, выбора пользователем Mark Audi, получил A1, A2.Пользователь выбрал BMW получил X6, X5.Я подключаю все, что нужно только для получения данных из базы данных.Посмотрите мой код.
Таблица типов машин:
$table->increments('id');
$table->string('name');
$table->timestamps();
Таблица марок:
$table->increments('id');
$table->string('name');
$table->timestamps();
$table->integer('car_type_id');
Таблица моделей:
$table->increments('id');
$table->integer('mark_id');
$table->string('name');
$table->timestamps();
$table->integer('car_type_id');
Модель автомобиля:
public function marks(){
return $this->hasMany(Mark::class);
}
Марка модели:
public function car_type(){
return $this->belongsTo(Car_type::class);
}
public function carmodels(){
return $this->hasMany(CarModel::class);
}
Модель CarModel:
public function mark(){
return $this->belongsTo(Mark::class);
}
Теперь мне нужно получить данные в контроллере.Я пытаюсь это
$car_type = Car_type::where('id' , $id)->first();
return $car_type->marks()->get();
Получить оценки с идентификатором модели car_type 1, но это плохая логика.