Я создаю проект приложения для блога на Angular 7. Использование облачных функций firebase в качестве бэкэнда и выполнение операций CRUD путем сохранения содержимого html в firebase с использованием компонента Angular - CKEditor.
Похоже это в firebase
content: "<p>Sample Blog Post</p><img src = "someLink">"
а затем я визуализирую эту строку на странице
<div [innerHTML] = "content"></div>
Я думаю, что этот подход называется WYSIWYG (What You See Is What You Get) и работает отлично, но мне кажется, что это не самый эффективный способ.
Я хочу иметь блог-сайт только с сообщениями в блогах, без каких-либо других функций. Есть ли проблема с таким подходом в моем случае? Можете ли вы порекомендовать какое-либо другое решение, если есть проблема?
Спасибо.






Нет ничего плохого в вашем подходе к сохранению HTML в базе данных.
Фактически, так работает Wordpress.
К вашему сведению, «WYSIWYG (What You See Is What You Get)» обычно применяется к таким вещам, как редакторы:
https://en.wikipedia.org/wiki/WYSIWYG
WYSIWYG (/ˈwɪziwɪɡ/ WIZ-ee-wig)[1] is an acronym for "what you see is what you get". In computing, a WYSIWYG editor is a system in which content (text and graphics) can be edited in a form closely resembling its appearance when printed or displayed as a finished product,[2] such as a printed document, web page, or slide presentation.
Для простого веб-сайта блога такое сохранение контента звучит совершенно естественно.
Разметка HTML действительно является самым простым способом, если вы занимаетесь программированием самостоятельно. (Другой способ - уценка, который вы уже используете на этом сайте. Это также достаточно просто, но все же требует дополнительной библиотеки, а текст уценки по-прежнему хранится в базе данных, поэтому вы действительно не сохранили никаких шагов программирования. )
В целях безопасности я бы посоветовал вам ознакомиться с некоторыми функциями вашей платформы, чтобы HTML-теги были проверены, а недействительные - удалены. В Руководстве по PHP есть несколько хороших примеров:
Если вы используете базу данных в реальном времени, это будет плохо, если вы используете базу данных firestore, это сработает.
Небольшое объяснение того, как база данных реального времени будет рассчитывать стоимость работы на основе того, сколько мегабайт используется по сети для получения и хранения данных. Firestore зарегистрирует чтение и запись в базу данных.
Если вы хотите использовать его, вы можете сохранить его как строку в хранилище, и он будет использовать вам одно действие записи. Не отправляйте никаких писем, потому что для этого потребуется много действий записи. Если вы хотите это сделать, я хочу объяснить, как это сделать.
Гибридная версия:
В конце концов, я тоже использую эту гибридную версию, и я могу хранить много данных только с помощью бесплатных услуг, которые они предлагают.
Ха-ха, теперь я пытаюсь придумать случай, когда это НЕ хорошая идея. Однажды я работал с парнем, который пытался поместить все приложение в базу данных, включая верхние и нижние колонтитулы страниц, структурные элементы и практически любые другие элементы кода, которые обычно находятся в файле. Пожалуйста, просто ... нет.