9***@qq.com
9***@qq.com
  • 发布:2024-01-25 01:15
  • 更新:2025-01-21 10:18
  • 阅读:287

前端添加数据库记录,如何添加date字段的数据

分类:uniCloud

以下是我的数据库表结构中的字段,在我在前端为其添加数据时显示:
插入失败 Error: 数据库验证失败:["eating_date"]必填。
但是我在把表结构删掉必填字段,或将其改为string类型时可以插入。

"eating_date": {  
    "bsonType": "date",  
    "description": "用餐日期"  
},

前端插入方法如下

db.collection("records").add({  
    user_id: "123456",  
    eating_date: new Date(mealRecord.date),  
    meal_time: meal,  
    eating_num: this.form.num,  
    note: this.form.notes  
}).then(res => {  
    console.log("插入成功",res);  
}).catch(err => {  
    console.log("插入失败",err)  
})

我传入的数据是个这样的,用new Date()把字符串类型的变量转为date类型:

"mealsData": [  
        {  
            "date": "2024/1/24",  
            "meals": {  
                "breakfast": true,  
                "lunch": true,  
                "dinner": true  
            }  
        },  
]

转完是这样的 "2024-01-24T16:00:00.000Z"

user_id: mealData.user_id,  
eating_date: new Date("2024-1-25"),  
meal_time: mealData.meal_time,  
eating_num: num,  
note: notes

我这样直接附一个字符串又可以(将添加方法放在云对象中使用,直接在前端页面使用还是不行),但是用变量就不行,我的变量是string类型的

2024-01-25 01:15 负责人:无 分享
已邀请:
套马杆的套子

套马杆的套子 - 没有解决不了的问题,只有解决不完的问题

换成2024-1-24试试
也可以用timestamp类型

  • 9***@qq.com (作者)

    这两个都不行

    2024-01-25 11:21

9***@qq.com

9***@qq.com (作者)

貌似把字段名改了就好了,不知道什么bug,希望看到会修复

LGG233

LGG233 - others

直接用"2024-1-25",去掉new Date试试

菠可菠

菠可菠

我发现date类型的字段不能写在required里。
你把字段名改了就好了,估计是因为required里没改名所以没有命中

要回复问题请先登录注册