Как бы вы структурировали страницу ниже в Codeigniter?
Я думал о создании отдельных контроллеров для каждого раздела
Исключая раздел содержимого (поскольку это меняется в зависимости от ссылки на левая навигация и навигация по содержанию используются как своего рода подменю). Все остальные разделы остаются примерно такими же
, о которых я думал:
Class User_Profile extends Controller
{
function index()
{
$this->load_controller('Left_Nav');
$this->load_controller('Content_Nav');
$this->load_controller('Login_Name');
$this->load_controller('Leaderboard', 'Board');
$this->Left_Nav->index(array('highlight_selected_page' => 'blah'));
$this->load('User');
$content_data = $this->User->get_profile_details();
$this->view->load('content', $content_data);
$this->Login_Name->index();
$this->Board->index();
}
}
Очевидно, что этот load_controller
не существует, но эта функция будет быть полезным. Контроллер для каждого раздела получает требуемые данные от модели, а затем загружает страницу через $ this-> view-> load ()
Это может быть головной болью, если этот код находится во всех остальных местах. навигационные ссылки, такие как Новости, Пользователи, О нас и т. д. Но опять же, не каждая навигационная ссылка имеет все эти разделы, поэтому мне нужна гибкость наличия раздела ns как "частичное представление"
Может ли кто-нибудь предложить лучший способ сделать это?