# #firebase #flutter
Вопрос:
как я могу добавить несколько изображений и сохранить их в массиве в firebase ? в каждом контейнере есть кнопка , чтобы пользователь мог добавлять по одному изображению на контейнер, а затем я ХОЧУ СОХРАНИТЬ их в своей базе данных. Любая помощь будет очень признательна ^^
Ответ №1:
то, что вы показываете на своем изображении, — это fbCloudStore, который используется для хранения информации в структуре json.
Для хранения изображений вы можете использовать fbStorge.
вот фрагмент, который я использую в своем проекте:
Futurelt;String?gt; uploadFile({ required FilePickerResult file, required String fileName, required FirebaseReferenceType referenceType, }) async { try { final ref = _getReference(referenceType); final extension = path.extension(file.files.first.name); final _ref = ref.child(fileName extension); late UploadTask uploadTask; if (kIsWeb) { uploadTask = _ref.putData(file.files.first.bytes!); } else { uploadTask = _ref.putFile(File(file.files.single.path!)); } var url; await uploadTask.whenComplete( () async =gt; url = await uploadTask.snapshot.ref.getDownloadURL()); print(url); return url; } on FirebaseException catch (_) { print(_); } }
Обратите внимание, что я возвращаю URL-адрес fbStorage, чтобы связать его с fbCloudStorage
final url = await FirebaseStorageSer.to.uploadFile( file: result, fileName: STORAGE_USER_PROFILE_PICTURE, referenceType: FirebaseReferenceType.user, ); if (url != null) { await FirebaseAuthSer.to .updateUserProfile(photoUrl: url); }
FirebaseReferenceType.user-это всего лишь простое перечисление для упрощения целей ссылок.