从Firebase中删除数据,但不能永久删除

时间:2019-07-25 07:36:12

标签: java android firebase firebase-realtime-database

我想从火力基地中删除一些数据,但不希望第二天永久取回这些数据。

我正在开发一个android应用,其中用户创建了一个任务列表,并将其保存在fire base实时数据库中,持续了几天,用户完成后将其从任务列表中删除,并将删除任务保存在历史记录中他完成任务时的日期活动,并返回他在第一天所做的任务列表。

2 个答案:

答案 0 :(得分:0)

如果要维护“历史记录”列表,只需创建一个新集合(我一直在使用Firestore,所以忘记了Firebase数据库中的主键值对是什么),然后将已删除的用户条目保存在该集合中/ base键值对。

例如,如果您的数据库结构现在看起来像这样。

-main
    |_user_data
      |_user1
      | |_user1 stuff 
      |_user2
        |_user2 stuff

然后做到

-main
    |_user_data
    | |_user1
    | | |_user1 stuff 
    | |_user2
    |   |_user2 stuff
    |
    |_deleted_user_notes
      |_user1 
      | |_user 1 deleted notes
      |_user2 deleted notes
        |_user 2 deleted notes

在列表上按Delete键后,只需将笔记移动到此子集合中即可。在要获取已删除笔记的活动中,使用此deleted_user_notes代替user_data

我想说出this的答案,因为它比我的方法更容易实现。

答案 1 :(得分:0)

怎么做,而不是保留整个第二组已删除/删除的内容,而是为每个任务在模型中添加一个布尔变量(如果这就是您的应用程序所针对的),然后如果用户删除了注释,则设置布尔值为true。

检索信息时,请过滤掉标记为true或false的任务。这样,您可以将所有信息存储在同一集合中,并且仅基于此布尔值进行过滤和更改。希望这是有道理的:)

相关问题