Kotlin Firebase将多个值设置为数据库

时间:2018-05-13 20:27:25

标签: android firebase firebase-realtime-database kotlin

如何使用Kotlin为firebase数据库设置多个值?类似于下面的代码。

  val database = FirebaseDatabase.getInstance()
  val myRef = database.getReference("users")

  var ref = myRef.child(firebaseUser.uid)
  ref.setValue({ "username": username,
                            "email": email,
                            "rank": 0,
                            "message_count": 0,
                            "date_joined": date,
                            "purchase": false,
                            "initial_payment_option": "N/A",
                            "current_payment_option": "Free",
                            "subscription": "N/A",
                            "date_purchased": "N/A",
                            "family_discount": "N/A"})

规则

{
  "rules": {
    "users":{
     ".read": "true",
     ".write": "true",

1 个答案:

答案 0 :(得分:3)

使用HashMap<String, Object>包含您要更新的所有键和值。

HashMap<String, Object> map = new HashMap<>();
map.put("username", username);
map.put("email", email);
// etc...
ref.setValue(map);

你可以用Kotlin的hashMapOf来清理它。

val map: HashMap<String, Object> = hashMapOf(
    "username" to username,
    "email" to email
)

还有see the documentation更多这样的例子。