gpt4 book ai didi

javascript - 将文件引用添加到数据库中

转载 作者:行者123 更新时间:2023-11-30 13:51:05 24 4
gpt4 key购买 nike

我想将我上传图片的图片引用添加到 firestore 数据库中。我的代码是将图像上传到 firebase 存储中,但不将数据保存到数据库中。我收到错误:

未捕获的 FirebaseError:使用无效数据调用函数 DocumentReference.set()。不支持的字段值:自定义 je 对象(在字段图像中找到)

正确的做法是什么?

请看下面的代码:

console.log("Initialisation Successful!");
var db = firebase.firestore();
var storageRef = firebase.storage().ref().child('Images');



function addExercise(){
var exerciseName = document.getElementById("ename").value;
var exercisePart = document.getElementById("body_part").value;
var exerciseLevel = document.getElementById("elevel").value;
var file = document.getElementById("eimage").files[0];

var thisRef = storageRef.child(file.name);
thisRef.put(file).then(function(snapshot) {
console.log('done!' + thisRef );
});



db.collection("Exercises").add({
Name: exerciseName,
BodyPart: exercisePart,
Level: exerciseLevel,
Image: thisRef

})
.then(function(){
console.log("Data entered successfully!");
})
.catch(function(error){
console.error("Error!", error);
});
}

最佳答案

您可能只想使用 thisRef.fullPath 保存引用的完整路径,因为这是一个简单的字符串而不是完整的对象。

稍后要将其转换为您可以阅读的对象,您可以执行以下操作:

firebase.storage().ref().child(fullPath)

这显然假设存储桶没有改变——否则您还需要存储存储桶名称。

在此处查看更多详细信息:https://firebase.google.com/docs/storage/web/create-reference .

关于javascript - 将文件引用添加到数据库中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58225145/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com