Есть ли что-то вроде MasterPages на CodeIgniter Framework? - PullRequest
11 голосов
/ 08 июля 2010

Я новичок в Code Igniter и хочу знать, есть ли что-нибудь, что работает как MasterPages в .NET.

Кроме того, мне было интересно, где я должен хранить свои публичные файлы, такие как скрипты, стили иimages.

Поздравления и Спасибо заранее

Ответы [ 4 ]

12 голосов
/ 09 июля 2010

Основные виды не встроены в структуру. Чтобы получить аналогичный эффект, вы можете загрузить подпредставление и передать его в главное представление.

Контроллер:

class Items extends Controller
{
    function show($id)
    {
        $item = $this->item_model->get_item($id);

        // Load the subview
        $content = $this->load->view('item/show', array('item' => $item), true);

        // Pass to the master view
        $this->load->view('master_view', array('content' => $content));
    }
}

Основной вид:

<div id="header">
</div>
<div id="content">
    <?php echo $content; ?>
</div>
<div id="footer">
</div>

Чтобы ответить на ваш другой вопрос, я храню все скрипты Javascript и CSS в каталогах в корне моего проекта.

2 голосов
/ 08 июля 2010

Я не уверен, что у них есть что-то в точности как главная страница.CodeIgniter - это скорее инфраструктура MVC, использующая представления и элементы управления для создания страниц.Если вы новичок в CodeIgniter, у net.TutsPlus есть действительно хорошая серия видеофильмов , в которой подробно рассказывается, как использовать инфраструктуру для различных сценариев.Загляните в раздел «Catch Up», чтобы увидеть список видео.

Надеюсь, это поможет вам и удачи в вашем проекте.

1 голос
/ 08 июля 2010

попробуйте эту библиотеку

http://www.williamsconcepts.com/ci/codeigniter/libraries/template/?v141

0 голосов
/ 08 июля 2010

Я не слишком знаком с .NET или CodeIgniter, но, похоже, те же функциональные возможности могут быть предоставлены при разумном использовании Views . Первое предложение на этой странице гласит:

Фактически представления могут гибко встраиваться в другие представления (в другие представления и т. Д. И т. Д.), Если вам нужен этот тип иерархии.

Это похоже на то, что обеспечивает MasterPage. И на самом деле, большинство PHP-фреймворков и систем шаблонов предоставляют одинаковые функции.

В ответ на ваш второй вопрос вы можете захотеть хранить свои скрипты, стили и изображения в отдельных папках вне корневого веб-каталога. Я считаю, что URL-адреса относятся к index.php, поэтому, если вы будете располагать рядом с ними, вам будет легче ссылаться на них в ваших представлениях. Другой вариант - взглянуть на Asset Helper .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...