Хороший способ структуры базы данных firebase для того, чтобы отсортировать их по датам? - PullRequest
0 голосов
/ 02 сентября 2018

Я использую Firebase и создаю приложение, которое позволяет пользователям сохранять 6 изображений профиля.

Теперь я подготовил 6 изображений, и пользователь может просто добавить свои изображения, нажав на каждое изображение.

enter image description here

Я хочу сохранить изображение в хранилище Firebase и загрузить URL в базу данных Firebase. Технически, я могу сохранить его, но я не уверен, как структурировать базу данных и имена файлов изображений.

В настоящее время я назвал файл изображения с помощью Dateformatter (например, «yyyy-MM-dd» 'ЧЧ: мм: сс ".jpg) и установите URL для загрузки в базу данных, как "гггг-мм-дд '' чч: мм: сс": "скачатьURL"

Структура базы данных выглядит следующим образом:

"User" : { 
  “user’s uid” : { 
    "ImgURLs” : { 
      "2018-09-02_21:59:80" : “(here is the url)”, 
      "2018-09-02_22:05:72" : "(here is another url)", 
      "2018-09-02_23:49:54” : "(here is another url)" 
    }, 
  } 
}

Но, таким образом, я не знаю, как получить данные соответственно для этих 6 изображений.

Есть ли возможность реализовать это, если мой вопрос имеет смысл.

1 Ответ

0 голосов
/ 03 сентября 2018

Изменение способа хранения URL должно дать ответ

users :
  uid :
    userName: "some name"
    ImgURLs :
       -Jiokoisd094k //key created with childByAutoId
           url : “(here is the url)”
           timestamp : "2018-09-02_21:59:80"
       -k0k4000od0if //key created with childByAutoId
           url : "(here is another url)"
           timestamp : "2018-09-02_22:05:72"

При этом, пока вы знаете uid пользователей, вы можете получить доступ к их URL-адресам в users / uid / ImgURLs. Это также позволяет хранить метку времени и другую информацию о каждом изображении; возможно, дочерний узел с заголовком: «Черт, ты хорошо выглядишь» внутри каждого дочернего узла.

В зависимости от варианта использования, если вам потребуется запросить эти узлы, может быть лучше денормализовать данные и сохранить их в отдельном узле

users :
   uid :
      userName: "some name"

urls  :
   uid :
      -Jiokoisd094k //key created with childByAutoId
         url : “(here is the url)”
         timestamp : "2018-09-02_21:59:80"
      -k0k4000od0if //key created with childByAutoId
         url : "(here is another url)"
         timestamp : "2018-09-02_22:05:72"
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...