169 похожих чатов

Подскажите правильное хранение информации постов и комментарий на фронте. Сейчас

я такую схему придумал

Post InterfacePost{
Idpost:1,
Name: Igor,
Text: something,
Photo: [link,link,link]
Comments interfaceComments{
Idpost:1,
Name: igor
Text: something
Replay: true
Replay to whom: Igor
}
}

Я написал примерно нормально ли создать объект с комментами внутри объекта поста.

Посты работают, посты прекрасно выводятся и комментарии спокойно сделаю, просто хочу понять, кто-то делает по другому или это подходит?

И плохой ли это вариант?

22 ответов

18 просмотров

Добавить уникальный идентификатор для каждого комментария. Добавить поле для даты и времени создания комментария. Добавить поле для имени автора комментария. Рассмотреть возможность хранения комментариев в отдельной таблице. Обновить код для учета внесенных изменений.

Olegacat- Автор вопроса
Olegacat
Это я знаю, просто объект в объекте, норм так дела...

Лучше не слушай данного Кента Он портянки из чат жпт кидает (:

сделай врапер-обёртку класс для каждого обьекта (комент, пост) в который ты будешь ложить данные с бека, и там же логику работы с этими обьектами пропиши

Olegacat- Автор вопроса
dencelman Р
сделай врапер-обёртку класс для каждого обьекта (к...

Уже это все готово, для постов. Просто тут именно нету представления норм ли так. Но уже готово. И вопрос, как вы реализовывали бы replay в объекте?

Olegacat
Уже это все готово, для постов. Просто тут именно ...

в обьекте? или ты имеешь ввиду экземпляр класса?

Olegacat- Автор вопроса
ПРАВОСЛАВНЫЕ ЗНАКОМСТВА / РЕКЛАМА ЧАТОВ
Помогло?

Да, спасибо, я так и думал, что так норм

Olegacat- Автор вопроса
dencelman Р
в обьекте? или ты имеешь ввиду экземпляр класса?

У меня прям в объекте будет лежать объект коммента. И получается просто для реплаев создать переменную реплай айди для компента, которому отвечаешь. И уже от этой переменной писать функции. Типа если есть, то появляется слово реплай и комментарий сдвигается вправо

Olegacat
Уже это все готово, для постов. Просто тут именно ...

если не было никакой проблемы а просто ты спрашиваешь норм ли - опирайся на два критерия - 1 работает ли ЭТО так как нужно 2 сможешь ли ты развивать, масштабировать нормально ЭТО если ты хочешь узнать как делают другие - начни чекать репы на ГИТЕ реальных или тестовых проектов

Olegacat- Автор вопроса
dencelman Р
если не было никакой проблемы а просто ты спрашива...

Согласен, поищу, что-нибудь на гитах, чтобы посмотреть другие варианты

ну я бы хранил их просто в линейной структуре типа Record<string | Comment> где каждый комент имеет ид родителя и дату создания в unixTime (в виде числа) дата создания/обновлениия нужна для сортировки коментариев, если у родителя несколько дочерних коментариев, что бы с массивами не возюкаться вообще Родителем может быть как ПОСТ , так и другой комментарий Просто в плоской структуре легко данные редактировать, особенно если это объект а не массив а если в виде дерева хранить, то как его редактировать, если он аж на 5 уровне вложенности? да еще и выполняя требования реакта к иммутабельности состояний а линейная структура позволяет легко это дело хранить, редактировать и можно по ней быстро дерево коментов с неограниченной вложенностью воссоздать.

Olegacat- Автор вопроса
Rain
ну я бы хранил их просто в линейной структуре типа...

Спасиииибо, вот это интересно, посмотрю, как лучше линейно сделать

Olegacat
Спасиииибо, вот это интересно, посмотрю, как лучше...

Чтобы удовлетворить требования React к иммутабельности состояний, вы можете использовать методы, такие как spread-оператор и методы массивов, для создания новых объектов комментариев при добавлении, редактировании или удалении комментариев. Это позволит вам изменять состояние вашего приложения без изменения исходных данных.

Olegacat- Автор вопроса
Rain
ну я бы хранил их просто в линейной структуре типа...

Василий, правильно ли я понял, что при линейной структуре, будут линейные комментарии. Потому-что моя цель, сделать древо с первым уровнем, как у вк

Olegacat
Василий, правильно ли я понял, что при линейной ст...

А я ни разу в жизни VK не пользовался и ничем похожим )) а вообще структура называется линейной, потому что не имеет вложенных сущностей в такой струтктуре легко хранить данные или по ней искать информацию в нее можно и обыный списко комментариев засунуть, а можно и дерево. главное что хранить их будет удобно и редактировать

Похожие вопросы

Обсуждают сегодня

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
Rꙮman Yankꙮvsky
29
А вообще, что может смущать в самой Julia - бы сказал, что нет единого стандартного подхода по многим моментам, поэтому многое выглядит как "хаки" и произвол. Короче говоря, с...
Viktor G.
2
30500 за редактор? )
Владимир
47
а через ESC-код ?
Alexey Kulakov
29
Чёт не понял, я ж правильной функцией воспользовался чтобы вывести отладочную информацию? но что-то она не ловится
notme
18
У меня есть функция где происходит это: write_bit(buffer, 1); write_bit(buffer, 0); write_bit(buffer, 1); write_bit(buffer, 1); write_bit(buffer, 1); w...
~
14
Добрый день! Скажите пожалуйста, а какие программы вы бы рекомендовали написать для того, чтобы научиться управлять памятью? Можно написать динамический массив, можно связный ...
Филипп
7
Недавно Google Project Zero нашёл багу в SQLite с помощью LLM, о чём достаточно было шумно в определённых интернетах, которые сопровождались рассказами, что скоро всех "ибешни...
Alex Sherbakov
5
Ребят в СИ можно реализовать ООП?
Николай
33
https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_h_common.erl#L174 https://github.com/erlang/otp/blob/OTP-27.1/lib/kernel/src/logger_olp.erl#L76 15 лет назад...
Maksim Lapshin
20
Карта сайта