Я новичок в Yii Framework и создаю CRM, который основан на модуле. Используя разные учебные пособия, я могу создать свою собственную тему, но теперь я застрял в одном месте.
В моей теме верхние <nav>
и left <nav>
остаются неизменными во всем приложении, пока пользователь не войдет в систему. Вот почему я сделал его частью моего main.php , но на странице входа нет кнопок для показать, просто простую форму входа с 2 текстовыми полями .
Как я могу реализовать эту форму в своем приложении с помощью пользовательских тем?
Я попытался определить макет в этом конкретном действии, но не удалось. Любая помощь будет оценена по достоинству.
Использование пользовательского макета для вашего вида – это правильный путь. Вы можете либо установить макет в действие контроллера, либо в виде.
$this->layout = "//layouts/mylayout";
Обратите внимание, что макеты по умолчанию column1.php и column2.php также используют файл макета main.php .
Попробуйте это шаг за шагом:
Создать новую тему
Вы можете создать новую тему и добавить ее в каталог Application_Root / themes .
Посмотрите на тему / классический каталог, чтобы получить представление о структуре каталога. Важным файлом (на данном этапе) является: – Application_Root / themes / views / layouts / main.php
Настройте содержимое темы
Скопируйте файлы css, image, js и т. Д. В правильный каталог и измените файл main.php по своему вкусу. Например, если ваш main.php говорит
<link href = "css / mystyle.css" rel = "stylesheet">
Затем у вас будет файл Application_Root / css / mystyle.css
Создайте заполнитель содержимого.
Где-то в вашем main.php будет заполнитель для динамического текста, который указан.
<? php echo $ content; ?>
Скажите yii использовать тему. Измените файл Application_Root / protected / config / main.php , добавив следующую строку непосредственно перед последней строкой (содержащей закрывающую скобку).
'Тема' => 'surveyhub'
Создайте заполнители макетов.
Создайте сегмент HTML, который будет записан в часть содержимого $ main.php. Назовите его, например, one_column.php. Таким образом, путь к файлу будет Application_Root / themes / views / layouts / one_column.php. В этом файле, где вы хотите разместить динамический текст, создайте местозаполнитель.
<? php echo $ content; ?>
Скажите Yii, чтобы использовать макет.
В файле Application_Root / protected / components / Controller.php добавьте или измените переменную макета для чтения:
public $ layout = '// layouts / one_column.php';
Обновите страницу