Я разрабатываю приложение для голосования. Когда пользователь отправляет голосование, его идентификатор пользователя сохраняется под соответствующим узлом в базе данных пожарного депо. И если пользователь решает изменить свой голос, его исходный голос удаляется (что означает, что его идентификатор пользователя удален) и сохраняется под узлом его новой опции голосования. По сути, это перезаписывает их голос.
Проблема, с которой я столкнулся, заключается в том, что если у опции опроса есть только один голос, и это удаляется из-за того, что пользователь меняет свой первоначальный голос, узел удаляется, а опция полностью удален из списка. Я проиллюстрирую это ниже.
Если вы посмотрите ниже, вы увидите, что Будапешт и Амстердам изначально имеют по 1 голосу каждый. Если мой исходный голос был за Будапешт, и я решил изменить его на Краков, мой идентификатор пользователя удаляется из узла Будапешта и добавляется в узел Кракова, и в результате Будапешт удаляется и удаляется из списка, так как под ним нет значений, хранящихся под ним. , Это также вызывает исключение индекса за пределами границ.
Я ищу способ обойти это, где в принципе я могу предотвратить удаление параметров опроса из-за отсутствия голосов. Надеюсь, это понятно. Буду признателен за любую помощь или предложения.