Hola buenas de nuevo.
Piensa una cosa. En MVC es el controlador quien le pasa los datos a la vista, y los datos, los obtiene de un modelo. Por lo tanto, tu aplicación parece estar bien planteada. Donde esta el problema? realmente no es ningún problema si en todos tus controladores necesitas esta información. Si no la necesitas, puedes extender del controlador original, o puedes hacer que el constructor de tu nuevo controlador, admita un parametro opcional para cargar o no ciertos contenidos. Por ejemplo.
Código PHP:
Ver originalpublic function __construct($load_vehicles = TRUE) {
if($load_vehicles) {
//cargo
$this->data['vehicles'] = $this->vehicles_model->get_all();
}
}
No se si entiendes la idea, puedes hacer mucho más complejo el tema.
Luego en tus controladores extendidos, tendrías que hacer dentro de su constructor
parent::__construct(FALSE)
si no quieres cargar de entrada los vehiculos.
Un saludo!