Olá, Thomas! Tudo bem com você?
Peço desculpas pela demora no retorno a sua mensagem.
Para implementar um menu mais sofisticado no CodeIgniter e conectar com uma model para retornar os dados do menu, podemos fazer o seguinte:
- Nos certificar de que estamos carregando a biblioteca Loader no nosso controlador. Por exemplo:
$this->load->library('loader');
- Em seguida, podemos chamar a model dentro do seu controlador usando o método $this->load->model(). Por exemplo:
$this->load->model('nome_da_model');
Devemos nos certificar de substituir 'nome_da_model
' pelo nome real da nossa model.
- Agora podemos chamar o método da model que retorna os dados do menu. Por exemplo:
$dados['menu'] = $this->nome_da_model->obter_menu();
Devemos nos certificar de substituir 'obter_menu()
' pelo nome real do método da nossa model que retorna os dados do menu.
- Por fim, podemos passar os dados do menu para a view usando o método $this->load->view(). Por exemplo:
$this->load->view('cabecalho', $dados);
Devemos nos certificar de substituir 'cabecalho
' pelo nome real da nossa view.
Caso o erro "Undefined property: MY_Loader::$load
" persista, pode ser necessário verificar se a biblioteca Loader está sendo carregada corretamente e se está sendo usado a sintaxe correta para chamar a model.
Caso não seja possível utilizar a MY_Loader, podemos criar um controlador base que todos os outros controladores herdem. Nesse controlador base, podemos colocar o código responsável por carregar a model e passar os dados do menu para a view. Dessa forma, eviamos repetição de código em todos os controladores.
Todavia, vale ressaltar que como você postou sua pergunta há algum tempo é possível que a constante evolução da tecnologia impacte na resolução da sua dúvida. Sendo assim, caso queira se aprofundar neste tema e com conteúdos atualizados, recomendo o material abaixo:
Espero ter ajudado.
Abraços e bons estudos!