Процесс, который вы описываете, довольно широк, поэтому я опишу его на высоком уровне ниже. Вам все равно придется много работать самостоятельно, чтобы реализовать каждый шаг, но это лучшее, что я могу разумно сделать при переполнении стека.
В вашем приложении есть два типа фотографий:
- Одобренные фотографии, которые может видеть любой пользователь.
- Неутвержденные фотографии, которые могут видеть только администраторы приложений.
Так что вам нужно будет провести различие где-то для каждого фотография, позволяющая идентифицировать утвержденные и неутвержденные фотографии. Вы можете сделать это разделение либо в хранилище, либо в базе данных (Firestore в вашем случае). Последнее позволяет немного больше гибкости, поэтому давайте сосредоточимся на этом.
Вам нужно будет выполнить процесс загрузки и утверждения следующим образом:
- Загрузить фотографию с приложение пользователя в хранилище
- Запись метаданных о фотографии в Firestore
- Эти метаданные должны идентифицировать фотографию по ее пути или URL-адресу для загрузки.
- Эти метаданные определяют что это новая фотография, поэтому она еще не утверждена.
- Администратор приложения теперь может читать эти метаданные и фильтровать фотографии, которые еще не были утверждены.
- Администратор приложения затем утверждает каждую фотографию, обновляя метаданные в базе данных. Например: установив поле
approved
в true
.
Несколько вещей, которые следует учитывать и учитывать в этом процессе:
- Для обеспечения регулярности пользователи могут видеть только утвержденные фотографии, вы можете использовать правила безопасности и запросы .
- Вы также захотите использовать правила безопасности, чтобы убедиться, что только администратор приложения может одобрить фотографию. В противном случае любой обычный пользователь также может установить для поля
approved
значение true
на шаге 2.