Pull to refresh

Comments 9

Мне кажется, вы делаете популярную ошибку — использование кэша в качестве постоянного хранилища. Кэш — хранилище очень быстрое, но не гарантированное. Кэш не дает никакой гарантии, что то, что вы туда положили, может быть извлечено пусть даже через микросекунду после того, как положили. Для проверки задайте в конфигурации проекта NullCache из Yii как кэш и проверьте — в норме все должно работать нормально (хотя и медленно).

Да и сама идея хранить статические страницы в БД и доставать оттуда мне кажется, мягко говоря, странной.
Видимо предполагается их редактирование в админке.
Это не исключает возможности сохранения отредактированных страниц на диск и дальнейшей работы с ними как с простейшими статическими страницами.
На счёт первого пункта — ваша правда, код поправлю в ближайшее время. На счёт хранения страниц в БД — не совсем согласен. Часто, в том числе и людям далёким от вёрстки, требуется самостоятельно вносить изменения в текст страниц, менять в них различные мета-теги и т.д., так что хранение страниц со всеми их дополнительными данными в БД кажется весьма удобным решением. Хотя, если под дальнейшей работой со страницами вы подразумеваете вывод их посетителю, то тогда да — логичным было бы использовать кеш, а не тянуться за страницей в БД. Учту.
Можно предоставить возможность редактировать, но хранить в файловой системе. В БД однозначно удобнее, потому что в случае хранения файлов — надо еще к каждому файлу будет файл свойств пристыковывать — или сохранять свойства в файле.
Конкретно здесь, где извлечение идёт либо всех данных (для карты путей), либо по первичному ключу (для вывода страницы посетителю) они не нужны. Однако, если всё же не останавливаться на этом голом функционале, а, например, дополнить модель методом, отдающим массив хлебных крошек для CBreadcrumbs, то можно и индексы добавить. Добавлю.
Спасибо! может пригодится для шаблонных сайтов. За реализацию спасибо! Сохранил Ваш модуль в дропбоксе)
Sign up to leave a comment.

Articles