OctoberCMS (Laravel) при сохранении модели обновляется поле created_at

Столкнулся с неприятной проблемой. Когда сохраняю в админке любую запись, обновляется поле created_at вместе с updated_at, хотя должно обновиться только updated_at.

Проблема оказалась банальная — в дополнительном свойстве поля created_at в базе MySQL есть атрибут on update CURRENT_TIMESTAMP.

Убираем это свойство, решаем проблему.

Ошибка формата даты {0}май|{1}мая. OctoberCMS

Вывожу дату, привожу её в нужный формат:

{{ question.created_at|date('d M Y') }}

Но вместо ожидаемого «10 май 2019», получаю «10 {0}май|{1}мая 2019».

Это баг jenssegers, тикет есть, но решать пока не торопятся — https://github.com/jenssegers/date/issues/272 🙁

Как вариант, использую вместо «M» «F», помогает, но месяц теперь склоняется:

{{ question.created_at|date('d F Y') }}

Заголовки страниц (title) в October CMS

Раньше я делал заголовки как?
В partial ‘_head’, там где у меня всякие meta, подключаются стили и т.д., я писал как-то так:

<title>{{ this.page.title }} — ООО «Котлетки Пирожки»</title>

Но это же неправильно!
Главные страницы сайта выглядят с убогим title: Главная — ООО «Котлетки Пирожки». Из админки не поправить, только в шаблоне руками. Жопа 🙁

Надо делать красиво!

Читать далее…

Полнотекстовый поиск по MySQL в October CMS

Понадобилось мне искать строку сразу в нескольких полях. Думал-думал и решил использовать полнотекстовый поиск MySQL. Довольно простая, но хитрая штука.

При создании таблицы в бд, надо добавить строку FULLTEXT (title,body) (где title,body — поля для поиска):

CREATE TABLE articles (
      id INT UNSIGNED AUTO_INCREMENT NOT NULL PRIMARY KEY,
      title VARCHAR(200),
      body TEXT,
      FULLTEXT (title,body)
    ) ENGINE=InnoDB;

Если же таблица уже создана, то выполняем запрос в MySQL:

CREATE FULLTEXT INDEX title_body ON articles(title,body)
Читать далее…

October CMS ошибка 404

Как вернуть ошибку 404?

Вот так:

return $this->controller->run('404');