how to read a specific record from firebase database using golang?

huangapple go评论122阅读模式
英文:

how to read a specific record from firebase database using golang?

问题

数据库结构:

user json:

  1. {
  2. "-KbF1E26gjZCjPnfcOmi" : {
  3. "DateOfCreation" : 1485253960222,
  4. "EmailId" : "abc@gmail.com",
  5. "FirstName" : "abcd",
  6. "LastName" : "z z",
  7. "Status" : "active",
  8. "UserType" : "admin"
  9. }
  10. }

如何检索与此**key(-KbF1E26gjZCjPnfcOmi)**对应的所有数据?

我尝试了这段代码,但它不起作用。

  1. func (m *User) RetrieveFromDBId(ctx context.Context,key string)(bool) {
  2. dB, err := GetFirebaseClient(ctx,"")
  3. var s []string
  4. err = dB.Child("User").Child(key).Value(s)
  5. if err != nil {
  6. log.Fatal(err)
  7. return false
  8. }
  9. log.Println( s)
  10. return true
  11. }
英文:

Database structure:

user json:

  1. {
  2. "-KbF1E26gjZCjPnfcOmi" : {
  3. "DateOfCreation" : 1485253960222,
  4. "EmailId" : "abc@gmail.com",
  5. "FirstName" : "abcd",
  6. "LastName" : "z z",
  7. "Status" : "active",
  8. "UserType" : "admin"
  9. }
  10. }

How to retrieve whole data corresponding to this
key(-KbF1E26gjZCjPnfcOmi)

I have tried this code, but it is not working.

  1. func (m *User) RetrieveFromDBId(ctx context.Context,key string)(bool) {
  2. dB, err := GetFirebaseClient(ctx,"")
  3. var s []string
  4. err = dB.Child("User").Child(key).Value(s)
  5. if err != nil {
  6. log.Fatal(err)
  7. return false
  8. }
  9. log.Println( s)
  10. return true
  11. }

答案1

得分: 2

我得到了答案

  1. func (m *User) RetrieveFromDBId(ctx context.Context, key string) (bool) {
  2. dB, err := GetFirebaseClient(ctx, "")
  3. value := User{}
  4. err = db.Child("/User/"+key).Value(&value)
  5. if err != nil {
  6. log.Fatal(err)
  7. return false
  8. }
  9. log.Println(value)
  10. return true
  11. }

这是一个用于从数据库中检索用户信息的函数。它使用了一个名为GetFirebaseClient的函数来获取Firebase客户端,并通过指定的key从数据库中获取用户信息。如果出现错误,它会记录错误并返回false,否则它会打印用户信息并返回true

英文:

I got answer

  1. func (m *User) RetrieveFromDBId(ctx context.Context,key string)(bool) {
  2. dB, err := GetFirebaseClient(ctx,"")
  3. value := User{}
  4. err = db.Child("/User/"+key).Value(&value)
  5. if err != nil {
  6. log.Fatal(err)
  7. return false
  8. }
  9. log.Println( value)
  10. return true
  11. }

huangapple
  • 本文由 发表于 2017年1月24日 20:03:57
  • 转载请务必保留本文链接:https://go.coder-hub.com/41827792.html
匿名

发表评论

匿名网友

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen:

确定