• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Google Firestore - jak rozdzielić dane między zalogowanymi użytkownikami?

0 głosów
199 wizyt
pytanie zadane 11 marca 2023 w JavaScript przez Yorweth Obywatel (1,310 p.)

Cześć

Przygotowuje podstawową stronę w oparciu o firebase.

Udało mi się stworzyć logowanie oraz rejestrację oraz dodawanie danych danych do firestore poprzez formularza.

Niestety dane są przypisane do ogólnej bazy danych, czy da się je rozdzielić na użytkowników?

Próbowałem to znaleźć w necie oraz w dokumentacji firebase, ale niestety nie wiem jak to prawidłowo napisać żeby odszukać rozwiązanie mojego problemu. Czy spotkaliście się z tym lub wiecie jak to zrobić?

 

Aktualnie mój kod JS z sprawdzaniem czy użytkownik jest zalogowany oraz z dodawaniem treści wygląda w ten sposób: 

import {initializeApp} from 'https://www.gstatic.com/firebasejs/9.17.1/firebase-app.js';
import { getFirestore, collection, getDocs, addDoc, updateDoc, setDoc} from "https://www.gstatic.com/firebasejs/9.17.1/firebase-firestore.js"; 

const firebaseConfig = {
    
};


const app = initializeApp(firebaseConfig);
const db = getFirestore(app);
const colRef = collection(db,'Note');
// const washingtonRef = doc(db, "cities", "DC"); //update doc

//wypisywanie dokumentu
const querySnapshot = await getDocs(collection(db, "Note"));
querySnapshot.forEach((doc) => {
  // doc.data() is never undefined for query doc snapshots
    console.log(doc.id, " => ", doc.data().Title);
    console.log(doc.id, " => ", doc.data().Descritpion);
});

//dodawanie poprzez formularz
const addNote = document.querySelector('.note-container');
const addBtn = document.querySelector('.note-btn');
addBtn.addEventListener('click',(e)=>{
    e.preventDefault();

    if(addNote.title.value && addNote['text-body'].value != null){

    addDoc(colRef,{
        Title: addNote.title.value,
        Descritpion: addNote['text-body'].value
    })
    .then(()=>{
        addNote.reset();
    });
    console.log('dodano treść');
}
else{
    alert("dodaj treść");
}
});
onAuthStateChanged(auth, (user) => {
    if (user !== null) {
        setTimeout("location.href = 'Index.html';",1500);
        const uid = user.uid;
    // ...
} else {
    // User is signed out
    // ...
}
});

 

Zaloguj lub zarejestruj się, aby odpowiedzieć na to pytanie.

Podobne pytania

0 głosów
1 odpowiedź 300 wizyt
pytanie zadane 4 czerwca 2022 w JavaScript przez Zaqu93 Gaduła (4,850 p.)
0 głosów
0 odpowiedzi 350 wizyt
pytanie zadane 2 grudnia 2021 w JavaScript przez Karson Obywatel (1,000 p.)
0 głosów
0 odpowiedzi 388 wizyt
pytanie zadane 29 czerwca 2018 w JavaScript przez thomson92 Nowicjusz (120 p.)

93,720 zapytań

142,635 odpowiedzi

323,264 komentarzy

63,268 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

Twierdza Linux. Bezpieczeństwo dla dociekliwych

Aby uzyskać rabat -10%, użyjcie kodu pasja-linux, wpisując go w specjalne pole w koszyku.

...