android - 如何使用 firebase 云功能在特定日期删除 firebase DB 数据

标签 android firebase firebase-realtime-database google-cloud-functions

我正在制作一个应用程序,但在特定日期使用云功能删除 firebase 数据库时遇到问题。

enter image description here

这就是我存储数据的方式,我想在 nextDonationDate 上删除这个节点,我搜索了很多,发现这可以用云功能来完成,但我不知道怎么做和访问这个,因为日期保存在用户的 UserID 如此面临问题以为此进行引用,我该如何解决我的问题以在 nextDonationDate 上执行?谢谢:)

最佳答案

云函数代码可能是这样的:

exports.deleteByDate = functions.https.onRequest((req, res) => {
  //url example 
  //   deletebydate?date=Oct 28, 2017
  var targetDate = req.query.date;

  var db = admin.database();
  var donorDbRef = db.ref('Blood_donors_last_donation_date');
  var updateVal = {};

  donorDbRef
      .orderByChild('nextDonationDate')
      .equalTo(targetDate)
      .once('value')
      .then( snapshot => {
        snapshot.forEach(childSnapshot => {
           updateVal[childSnapshot.key] = null
        });
        donorDbRef.update(updateVal, (error)=>{
           if(!error)
             res.status(200).send('succeed deleting data!');
           else
             res.status(200).send('failed deleting data!');                 
        });
      });


});

关于android - 如何使用 firebase 云功能在特定日期删除 firebase DB 数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45442218/

相关文章:

android - 启用滚动时调用 `getDrawingCache` 返回 null

Android 通用 ArrayAdapter

javascript - 如何在 html 标记中创建循环以显示数据库中的所有 JSON 子字段?

android - 不兼容类型 : FirebaseMessagingService cannot be converted to Context

database - 未找到 FIR 数据库

android - Resources$NotFoundException : If the resource you are trying to use is a vector resource, 您可能以不受支持的方式引用它

android - adb devices(在 android 主机上)显示没有设备

Angular 在后台显示推送通知

java - 如何从 Firebase 检索数据? dataSnapshot 有对象,但 getValue() 将返回 null

android - 进出 Firebase 数据库的最大消息速率