Я пытаюсь построить (сейчас просто размышляя / планируя / рисуя отношения:]) небольшую модульную систему для создания базовых веб-сайтов (в основном, чтобы упростить общие задачи, которые мы, веб-дизайнеры, делаем обычно).
Я немного застрял с дизайном базы данных / идеей хранения контента.
1. Что наиболее болезненно на большинстве веб-сайтов (по моему опыту), это страницы с квази одинаковым макетом / скелетом, с разной информацией - например, Заголовок, изображение и набор информации - но создание специальных шаблонов / специальных модулей в cms требует больше энергии, чем редактирование их в виде текста - однако здесь мы теряем некоторый операционный потенциал - мы не можем получить «только заголовки», потому что CMS / система понимает весь контент как одно текстовое поле
Итак, я хотел бы, чтобы эти две таблицы - одна для хранения информации о структуре контента (например, просто переменное количество фотографий <1; 500):], заголовок, текст, фотография (большая) и галерея) - КАК - и еще одна таблица со всем содержимым, модулями и частями «сборников» (мое рабочее название для различной структурированной информации) - ЧТО </p>
table module_descriptors (HOW)
id int
structure - *???*
table modules (WHAT)
id int
module_type - @link to module_descriptors id
content - *???*
2., Что мне нравится в этом - мне не нужно много таблиц - мне не нравятся базы данных с 6810 таблицами, по одной для каждого модуля, для его описания, для разного. отношение числа к тексту, ... и мне также не нравятся таблицы с 60 столбцами, например content_us
, content_it
, category_id
, parent_id
.
Я думаю, что мог бы держать описание структуры и сам контент (отмеченный ??? ?) Как XML или CSV, но, возможно, я пытаюсь заново изобрести колесо и ответить на него скрыт в каком-то шаблоне дизайна, который я не изучал.
Надеюсь, я вообще что-нибудь расскажу и получу несколько ответов - выскажи свое мнение, плюсы, минусы ... или отправь меня в ад. Спасибо
РЕДАКТИРОВАТЬ : Мой вопрос также такой: имеет ли этот подход смысл? Это для редактирования? Есть ли что-то лучше? Это морально? Разве котята не умирают, когда я это делаю? Не слишком ли это для сервера, если я хочу прочитать и сравнить 30 XML-файлов, извлеченных из БД (например, я хочу сравнить что-то)? Техническая часть - как это сделать - это только одна часть вопроса:)