I'm new to python
. I'm using a firebase firestore
database for this project. After entering the Admission_No
, I want to retrieve all the data in the relevant document such as name
, grade
, phone
. I tried to write a program for it. But I failed. Please help me to complete my project. Thank you all.
The Code might be full of mistakes. Please don't mind it and fix them for me.
.py
import firebase_admin
from firebase_admin import credentials
from firebase_admin import firestore
cred = credentials.Certificate("cred.json")
firebase_admin.initialize_app(cred)
db = firestore.client()
data = {
'Admission_No': input('enter ad_no : ')
}
query_ad = db.collection(u'Users').where(u"Admission_No", u"==", data["Admission_No"]).get()
get_data = db.collection(u'Users').where(u"Name", u"==", data["Name"]).get()
if query_ad:
print('Exist')
print(get_data)
else:
print("Doesn't Exist")
In this case, I tried many ways. But finally, I realized we should provide the correct Document ID
for retrieve all fields of data from firestore
.
Getting Data from Firestore - Method given in firestore
documentation
doc_ref = db.collection(u'cities').document(u'SF')
doc = doc_ref.get()
if doc.exists:
print(f'Document data: {doc.to_dict()}')
else:
print(u'No such document!')
In my case I tried with this Code and it was succeed.
u_name = input('Enter User Name : ')
ad_no = input('Enter Admission Number : ')
doc_name = ad_no + " - " + u_name
doc_ref = self.db.collection(u'Users').document(doc_name)
doc = doc_ref.get()
if doc.exists:
Full_Name = str(doc.to_dict()['Full_Name'])
Admission_No = str(doc.to_dict()['Admission_No'])
Grade = str(doc.to_dict()['Grade'])
Phone_Number = str(doc.to_dict()['Phone_Number'])
print(Full_Name, Admission_No, Grade, Phone_Number)
else:
print('No such document!')
Thank you everyone who helped me with this issue. (@RJC)