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

Приветствую. Задача. Есть список ресурсов который я получаю из ТВ

при сохранении ресурса, нужно записать его в БД в формате: id сохраняемого ресурса - id из списка. При этом если id в списке нет, а в БД есть, запись из базы надо удалить. Конкретный пример. Есть Главная (1) и есть разделы с новостями Политика (2)
Экономика (3)
Спорт(4). У главной есть ТВ list где записаны id тех разделов которые на главной надо выводить. Допустим изначально list = 2,3,4 и в БД есть записи
1 - 2
1 - 3
1 - 4.
Затем я удаляю из list id = 4. И мне нужно удалить из БД запись 1 - 4. Самый простой вариант который пришел мне в голову, удалить все записи где есть 1 и сделать новые, но это как-то топорно, есть вариант лучше? При этом если я вместо 4 запишу 5 то в БД надо добавить запись 1-5

17 ответов

13 просмотров

смею предположить, что для хранения списка ресурсов лучше было бы использовать поле в базе типа enum и тогда при сохранении просто обновлять 1 поле (будет и удалять и записывать и тд)

Артур-Шевченко💀 Автор вопроса
Gaius Cassius Longinus
смею предположить, что для хранения списка ресурсо...

Понял, надо было это уточнить. Мне нужно будет в сниппет получать список ресурсов которые используют тот или иной раздел новостей. Т.е. разделы будут выводиться не только на главной но и на других страницах

Артур Шевченко💀
Понял, надо было это уточнить. Мне нужно будет в с...

я бы использовал json формат хранения с ним и в сниппете работать просто и обновлять придется всегда 1 запись

В бд кастомная таблица?

Артур-Шевченко💀 Автор вопроса
Gaius Cassius Longinus
я бы использовал json формат хранения с ним и в сн...

А как я из json получу список всех ресурсов которые используют раздел Политика, например?

Артур-Шевченко💀 Автор вопроса
Dan
В бд кастомная таблица?

Да два поля master и slave

Артур Шевченко💀
Да два поля master и slave

А для каждого отдельная запись делается? Или в slave через запятую перечисляются?

Артур Шевченко💀
А как я из json получу список всех ресурсов которы...

меняем немного структуру хранения json "id"-"Тэг (политика например)", ... и потом %Like% загрузка конечно будет большая

Артур Шевченко💀
Отдельная

А что если делать одну запись для ресурса и в slave через запятую перечислять? Тогда можно просто при сохранении получать значение slave, конвертировать в массив и делать array_intersect с текущим

Dan
А что если делать одну запись для ресурса и в slav...

там выше уточнение есть же, про получение списка всех ресурсов которые исользуют какой-либо раздел)

Артур-Шевченко💀 Автор вопроса
Dan
А что если делать одну запись для ресурса и в slav...

Тот же вопрос, как получить обратный список, т.е. для раздела Новости получить всех кто его использует?

Dan
а, я чет проспал его

поэтому вариант оставить как есть, и делать delete insert

Артур-Шевченко💀 Автор вопроса

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

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

Господа, а что сейчас вообще с рынком труда на делфи происходит? Какова ситуация?
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
Карта сайта