Swift:如何从firebase加载用户,同时跳过来自另一个孩子的用户

时间:2017-04-07 21:30:57

标签: ios swift firebase firebase-realtime-database

  • 你好,我有一个Firebase,其结构如下:

    1. **Likes**:
       -*user1*
          -user3: "true"
          -user5: "false"
          - ....
       -*user3*
          -user1: "true"
          -...
    2. **Users**:    
       -*user1*:
         -name: "Jack"
         -email: "jackmail@mail.ml"
         -...    
       -*user2*:
         -name: "..."
         -email: "..."
         -...    
       -*user3*:
         -...    
       -*user4*:
         -...    
       -*user5*:
         -...    
       -*user6*:
         -...
    

所以,我希望加载那些不在喜欢孩子的用户...... (加载以前没有喜欢过的用户..)

1 个答案:

答案 0 :(得分:0)

让我们使用一个具体的例子

posts
  post_0
    likes
      user_0: true
      user_2: true
  post_1
    likes
      user_1: true

users
  user_0
    name: "Gilligan"
    likes:
      post_0: true
  user_1
    name: "Mary Ann"
    likes
      post_1: true
  user_2
    name: "Thurston"
    likes:
      post_0: true
  user_3
    name: "Ginger"
    likes: false

然后向用户节点查询喜欢为假的所有用户,在这种情况下将是Ginger。

   let query = usersRef.queryOrdered(byChild: "likes").queryEqual(toValue: false)
   query.observeSingleEvent(of: .value, with: { snapshot in
        print(snapshot)
   }