簡體   English   中英

如何更新我的firebase數據庫字段?

[英]How can i update my firebase database fields?

美好的一天。 我已經嘗試了我的水平最好,但每當我輸入新的“名稱”,“年齡”或之前輸入的數據被擦除時都無法更新數據。我想使用push或其他東西來更新數據。但仍然沒有做到那。

nameRef.addValueEventListener(new com.google.firebase.database.ValueEventListener() {
            @Override
            public void onDataChange(com.google.firebase.database.DataSnapshot dataSnapshot) {


                String text = dataSnapshot.getValue(String.class);
                String ho = name.getText().toString();

                nameRef.setValue(ho);
            }

            @Override
            public void onCancelled(DatabaseError databaseError) {

            }
        });
        genderRef.addValueEventListener(new com.google.firebase.database.ValueEventListener() {
            @Override
            public void onDataChange(com.google.firebase.database.DataSnapshot dataSnapshot) {
                String text = dataSnapshot.getValue(String.class);
                String ho = gender.getText().toString();
                genderRef.setValue(ho);
            }

            @Override
            public void onCancelled(DatabaseError databaseError) {

            }
        });
        ageRef.addValueEventListener(new com.google.firebase.database.ValueEventListener() {
            @Override
            public void onDataChange(com.google.firebase.database.DataSnapshot dataSnapshot) {
           `enter code here`     String text = dataSnapshot.getValue(String.class);
                String ho = age.getText().toString();
                ageRef.setValue(ho);

            }

            @Override
            public void onCancelled(DatabaseError databaseError) {

            }
        });
        EmailRef.addValueEventListener(new com.google.firebase.database.ValueEventListener() {
            @Override
            public void onDataChange(com.google.firebase.database.DataSnapshot dataSnapshot) {
                String text = dataSnapshot.getValue(String.class);
                String ho = email.getText().toString();
                EmailRef.setValue(ho);

            }

            @Override
            public void onCancelled(DatabaseError databaseError) {

            }
        });

如果您有這樣的JSON樹:

->users
    ->uid
        ->name
        ->age
        ->gender
        ->email

然后要更新數據庫中的值,您應該執行以下操作:

DatabaseReference mFirebaseDBRef = FirebaseDatabase.getInstance().getReference();
FirebaseAuth mFirebaseAuth = FirebaseAuth.getInstance();
FirebaseUser mFirebaseUser = mFirebaseAuth.getCurrentUser();

//use a POJO and make sure to have a default empty constructor in that class definition
User user = new User(name, age, gender, email)
mFirebaseDBRef.child("users").child(mFirebaseUser.getUid()).setValue(user);

這應該更新你的數據庫! 如果事情不明確,請隨意提問。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM