无法使用Golang在Firebase中搜索数字?

时间:2017-02-15 12:30:07

标签: firebase go firebase-realtime-database

我有以下Firebase结构,我使用Firego与Golang连接。

"Job":{
  "-Kd0G5mRrRCXlGJmIuD0" : {
    "CurrentDate" : 1487153684854,
    "CustomerId" : "-Kcgz7IpH0fbs4EXaELr",
    "CustomerName" : "David",
    "JobName" : "Maintanence",
    "JobNumber" : "101",
    "NumberOfTask" : "1",
    "Status" : "Active"
  },
  "-Kd0UwmSHRhHdPX8z2hl" : {
    "CurrentDate" : 1487157576818,
    "CustomerId" : "-Kcg6uppyD8yKznNXZd7",
    "CustomerName" : "John",
    "JobName" : "Cleaning",
    "JobNumber" : "101",
    "NumberOfTask" : "4",
    "Status" : "Active"
  }
}

我的工作结构:

type Job   struct {
    CustomerId      string
    CustomerName    string
    JobName         string
    JobNumber       string
    NumberOfTask    string
    Status          string
    CurrentDate     int64
}

我使用下面的代码搜索Jobname =“Maintanence”

err = dB.Child("Job").OrderBy("JobName").EqualTo("Maintanence").Value(&job)
if err!=nil{
    log.Println("Error:",err)
}
if len(job)==0{
   log.Println("map null:",job)
}else{
   log.Println("map not null:",job)
}

并打印:

map not null: -Kd0G5mRrRCXlGJmIuD0" : {
            "CurrentDate" : 1487153684854,
            "CustomerId" : "-Kcgz7IpH0fbs4EXaELr",
            "CustomerName" : "David",
            "JobName" : "Maintanence",
            "JobNumber" : "101",
            "NumberOfTask" : "1",
            "Status" : "Active"
          }

但是当我使用以下代码

搜索Jobnumber =“101”时
err = dB.Child("Job").OrderBy("JobNumber").EqualTo("101").Value(&job)
if err!=nil{
   log.Println("Error:",err)
}
if len(job)==0{
   log.Println("map null:",job)
}else{
   log.Println("map not null:",job)
}

打印:

map null:{}

为什么我无法搜索和打印JobNumber =“101”,当我能够搜索并打印JobName =“Maintanence”时?

0 个答案:

没有答案