Инициализация Firestore-Admin в приложении Flask - PullRequest
0 голосов
/ 10 мая 2018

У меня есть приложение Flask, которое использует Cloud Firestore для некоторых функций.Я использую библиотеку Firestore-Admin, которая работает нормально, но я предполагаю, что неправильно разместил код инициализации.Мои знания о работе приложений Flask ограничены, поэтому я просто добавил следующий код в мой app.py:

cred = credentials.Certificate('key.json')
fault_app = firebase_admin.initialize_app(cred)
db = firestore.client()

Пока код работает, мой вопрос в том, является ли это правильным решением для инициализации Firestore?Вписывается ли это решение в жизненный цикл приложения Flask?Я уже пытался инициировать Firestore напрямую из методов, которые его используют, но это делало ошибки сервера из-за количества инициализаций.

Ответы [ 2 ]

0 голосов
/ 06 октября 2018

Пример ниже может помочь вам:

import firebase_admin
from firebase_admin import credentials
from firebase_admin import firestore
from flask import Flask

app = Flask(__name__)

cred = credentials.Certificate("key.json")
firebase_admin.initialize_app(cred)

db = firestore.client()

app.route('/getdata')
def user_data():

#getting the docs

  users_ref = db.collection('Demo')
  docs = users_ref.get()
  for doc in docs:
      print('{} => {}'.format(doc.id, doc.to_dict()))
  return "Recorded Printed"

if __name__ == '__main__':
app.run()
0 голосов
/ 12 мая 2018

Выглядит разумно для меня. Такой же подход используется в этом уроке .

...