@molekulyarniy

Как хранить сложное содержимое постов блога?

Как хранить содержимое примитивных постов и статей (состоящих только из текста) я разобрался - заносишь дату поста, автора и текст поста в соответствующие поля записи БД. Потом в шаблон статьи вставляешь нужные данные из БД в нужные места.
Но я не совсем понимаю, как хранить содержимое больших и сложных постов. Например, статей. Допустим, в статье есть картинки, таблицы, списки, да еще и в середину статьи вставлена карта Google. И еще список тегов-категорий. Как такое разнородное содержимое вставить в шаблон статьи... а точнее, как всё это хранить в БД, чтобы потом вставить в шаблон - ни в каких туториалах еще не встречал.
Где бы я мог про это узнать? Как это называется, чтобы я мог поискать в Ютубе сам?
  • Вопрос задан
  • 58 просмотров
Пригласить эксперта
Ответы на вопрос 4
xmoonlight
@xmoonlight
https://sitecoder.blogspot.com
Публикация/пост - это "дерево" унифицированных объектов.
Выделяете все эти объекты и формируете "дерево", где каждый объект храните с привязкой к этому "дереву", которое, в свою очередь, однозначно привязано к конкретной публикации/посту.

Типы объектов: абзацы, цитаты, блоки кода, таблицы, изображения, внешние виджет-коды (отображение инфы со сторонних ресурсов: гугл/микрософт документы, таблицы, презентации,..; видео-ролики с ютуб, и т.д.), и т.д.

PS: Чем лучше изначально создадите сегментацию контента по типам объектов, тем меньше потом придётся переделывать.
Ответ написан
flapflapjack
@flapflapjack
Нажимательщик кнопков
любой контент можно хранить с помощью что-то типа BB-code.

Например карта гугл в текте может выглядеть, как [goole_map x=12321312 y=213213213][/google_map]

То же самое и видео, и таблицы.

Здесь на тостере посты тоже могут включать в себя интерактивные блоки типа JSFiddle или CodePen.

Хранится это все в обычном текстовом виде в БД, а при рендеринге - парсится и преобразовывается в валидный HTML-код для браузера.
Ответ написан
inoise
@inoise
Solution Architect, AWS Certified, Serverless
Да по-разному. Основная часть контента хранится как html в текстовых полях, а есть связная информация и она хранится в других таблицах
Ответ написан
@alexalexes
Теоретические основы нужно искать в основах проектирования БД. (а лучше прочитать весь курс проектирования ИС).
Но без практики построения и чтения схем баз данных вам будет сложно (концептуально они строятся на основе ER-диаграмм). Ищите примеры таких диаграмм и пытайтесь разобраться, для чего служат таблицы в них.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы