Чтобы сгенерировать уникальный ключ для нового дочернего узла, используйте метод Firebase push()
:
table_user.push().setValue(user);
Ключ, сгенерированный push()
, статистически гарантированно является уникальным, генерируется на клиенте (так работает, даже если нет подключения к интернету), и является хронологическим.Единственным недостатком является то, что они немного длинные, и, следовательно, их трудно запомнить.Несмотря на то, что они действительно являются лучшими ключами для данных, которые, по сути, являются хронологическими или не имеют естественного ключа.
Одна вещь, которую следует учитывать, - это использовать Firebase Authentication для аутентификации пользователей.Если вы сделаете это, пользователи do получат естественный ключ: их так называемый UID.И поскольку они имеют естественный ключ, в этом случае вы должны хранить их под ключом , который .Итак:
table_user.child(uidFromAuthentication).setValue(user);