Hola a todos vengo con un problema y creo que me ayudarán muchos acá
El tema es que tengo modelos que representan una especialización y no sé cómo hacer para poder instanciarlos dependiendo de la categoría en un action para poder dar de alta o mostrar los datos.
Por ejemplo puedo tener:
Anuncios->Vehículos->Autos
Anuncios->Vehículos->Motos
Anuncios->Propiedades->Campos
Anuncios->Propiedades->Departamentos
Cada categoría tiene atributos diferentes, autos tiene cantidad de puertas, motos tiene cilindradas, departamento tiene piso, departamento tiene pisos, cochera y campos no los tiene, etc
Para poder dar de alta un auto voy a tener que instanciar
Anuncios, Vehiculo y Autos en caso de que hayan elegido la categoría autos.
si seleccionan Departamentos debería instanciar Anuncios, Propiedades y Departamentos
yo pensaba hacerlo en un solo action y con un condicional instanciarlo
$anuncio = new Anuncio();
if ($categoria = Autos::ID_CATEGORIA){
$vehiculo = new Vehiculos();
$autos = new Autos();
if ($_POST… 3 save()()
$this->render(‘autos’, array(‘anuncio’ => $anuncio, ‘vehiculo’ => $vehiculo, ‘auto’ => $auto));
} elseif ($categoria = Motos::ID_CATEGORIA){
$vehiculo = new Vehiculos();
$motos = new Autos();
if ($_POST… 3 save()
$this->render(‘motos’, array(‘anuncio’ => $anuncio, ‘vehiculo’ => $vehiculo, ‘motos’ => $motos));
}
etc, etc un if para cada categoría especial
¿Hay alguna de hacerlo más práctico?
Me refiero a programación o modelo de datos
Muchas gracias, todavía no tengo nada hecho, únicamento me planteo esto para poder comenzar