Codeigniter Dinamik Menü / MY_Controller soru

0 Cevap php

Ben bir fonksiyonu kullanarak bir veritabanı tablosundan bir menü oluşturmak, ve ben uzun bir temel denetleyicisi sınıfta bu koydum:

<?php

class MY_Controller extends Controller {

    public function __construct()
    {
        parent::Controller();
    }

    public function category_menu()
    {
        $this->load->model('category_model', 'category');
        $categories = $this->category->get_categories();

        $menu ="<ul class=\"menu_body\" id=\"nav_categories\">\n";
        foreach($categories->result() as $row)
        {
            $menu .= "\t<li>" . anchor('listing/view' . $row->url, $row->name) . "</li>\n";
        }
        $menu .= "</ul>\n";

        return $menu;

    }
}

sonra doğal olarak benim denetleyicisi ~ benziyor

<?php

class Site extends MY_Controller {

    function __construct()
    {
        parent::__construct();
    }

    function index()
    {
        $data['menu'] = $this->category_menu();
        $this->load->view('view', $data);
    }
}

Bu işi yapar, ancak ~ her ~ sayfa / görünüm için bunu yapmak zorunda verimsiz gibi görünüyor?

Yoksa bu sadece CI / MVC bir sınırlama olduğunu ve bunu yapmanın başka bir yolu yoktur.

Herhangi bir fikir için teşekkürler

0 Cevap