#6 October CMS - Вывод задач

October CMS - создание компонент

Создадим новое свойство у нашего компонента:

    /**
     * The collection of tasks.
     * @var array
     */
    public $tasks;

В данной переменной мы будем хранить наши задачи списка дел.
Для простоты понимания изначально заполним их тестовыми значениями (вместо того чтобы сразу работать с БД).

Делать это мы будем в методе onRun:

    public function onRun()
    {
        $this->name = 'st';
        $this->tasks = [
                'task1',
                'task2',
                'task3',       
        ];
    }

Теперь нам надо выполнить вывод этих задач.
Если ранее мы делали это средствами CMS, то сейчас давайте сделаем это в нашей IDE.

Для этого откроем файл /public/themes/demo/pages/st-todo.html

//...
==

{% set tasks = stTodoList.tasks %}
<ul>
{% for task in tasks %}
<li>
  {{task}}
</li>
{% endfor %}
</ul>

{% component 'stTodoList' %}

Тестируем. Открываем страницу http://october.local/st-todo

И если мы все записали верно, то у нас отобразится список наших задач.

Далее.
Логично будет перенести этот код из шаблона страницы в сам компонент.
В самом шаблоне st-todo.html оставляем лишь подключение компонента.
И только что написанный код переносим в файл default.htm:

<h1>Task assigned to: {{ __SELF__.name }}</h1>
{% set tasks = __SELF__.tasks %}
<ul>
{% for task in tasks %}
    <li>
      {{task}}
    </li>
{% endfor %}
</ul>

Созраняемся, проверяем - все должно остаться без изменений.

Добавить отзыв (пожелание, комментарий)