如何使用Firebase的Cloud FireStore(Python 3)


Firebase已添加beta版本的" Cloud Firestore",并且我使用python进行了尝试,因此我将共享信息。
实际方法如下所述。

流动直到使用

  • 实施环境的确认(开发环境)
  • [Firebase] Cloud Firestore初始设置
  • 在Google Cloud Platform上创建证书
  • 将证书与Mac关联
  • 引入python库
  • Cloud Firestore的读写实践
  • 确认实施环境

    机器环境

    ?mac
    Python:3.6.2(带有pip)

    帐户

    ?拥有Firebase
    (如果您没有帐户,请创建一个)。

    [Firebase] Cloud Firestore初始设置

    Firebase数据库控制台屏幕

    当您移至Firebase的数据库控制台屏幕时,将显示以下屏幕。
    由于假定这次尚未设置,因此请在设置之前单击屏幕上显示的" Try FIRESOTRE Beta",以创建Cloud Firestore并执行初始设置。

    [设置之前]
    firebase02.png
    [设置后的数据库控制台屏幕]
    firebase12.png

    Cloud Firestore初始化屏幕

    单击"尝试FIRESOTRE Beta"后,屏幕上将出现一个弹出窗口。
    在此弹出屏幕中,可以对安全规则进行初始设置。

    设定值

    选择"以测试模式启动",然后单击"启用"按钮。

    选择项

    ?从锁定模式开始:初始设置时无法进行读写(创建后需要自行设置规则)
    从测试模式开始:对于那些想要测试的人。小心,任何人都可以窥视您!

    [规则设置]
    firebase03.png

    [按下启用按钮后的构建待机屏幕]
    等待1-2分钟
    firebase04.png

    [构建Cloud Firestore后的屏幕]
    施工完成后,该屏幕将变为Cloud Firestore控制台屏幕。
    最初,什么都没有设置,所以显示为空状态。

    firebase05.png

    在Google Cloud Platform上创建证书

    因为使用Cloud Firestore和python需要证书,所以
    按照以下链接在Google Cloud Platform的控制台屏幕上创建证书。
    (也许我只是不这样做而已)

    https://console.cloud.google.com/apis/credentials

    Google Cloud Platform屏幕项目设置

    转换时,将显示以下屏幕。
    由于尚未设置项目,因此请单击左上方的" Select Pro Pro Down"按钮或中间的" Select"按钮。
    按下后,将显示项目选择弹出窗口。
    如果此时显示多个,请选择使用Firebase创建的项目。

    [从链接移出后显示的屏幕]
    firebase06.png

    [显示项目选择屏幕]
    firebase07.png

    firebase08.png

    Google Cloud Platform屏幕创建证书

  • 选择项目后,在左侧菜单上选择认证信息以显示可在其中创建认证信息的屏幕。
  • 单击身份验证信息屏幕上显示的"创建凭据"下拉菜单,然后选择Pro Down中显示的"服务帐户密钥"以移至"服务帐户密钥创建屏幕"。
  • 在"服务帐户密钥创建屏幕"上,选择"服务帐户"和"密钥类型"。选择列在下面。
  • 选择后,单击"创建"以下载json文件。
  • 选择
    ?"服务帐户":firebase-adminsdk
    ?"密钥类型":json

    [认证信息屏幕]
    firebase09.png

    firebase10.png

    [服务帐户密钥创建屏幕]
    firebase11.png

    将证书链接到mac

    让mac记住证书路径。
    获取证书的路径并执行以下命令
    请使用绝对通行证。

    1
    > export GOOGLE_APPLICATION_CREDENTIALS="/.../[証明書のファイル名].json"

    引入python库

    我们将使用google-cloud库。
    文件

    1
    > pip install --upgrade google-cloud

    编写实践并将其加载到Cloud Firestore

    执行以下代码以写入和读取Cloud Firestore。

    main.py

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    # ライブラリの読み込み
    from google.cloud import firestore

    if __name__ == '__main__':


        # dbへの接続
        db = firestore.Client()

        ###########################
        # Write
        ###########################
        # コレクションの指定 : collection(u'users')
        # コレクションに紐づくドキュメントの指定 : document(u'alovelace')
        doc_ref = db.collection(u'users3').document(u'alovelace')

        # ドキュメントへの書き込み
        doc_ref.set({
            u'first': u'Ada',
            u'last': u'Lovelace',
            u'born': 1815
        })

        ###########################
        # Read
        ###########################
        users_ref = db.collection(u'users')
        docs = users_ref.get()
        for doc in docs:
            print(u'{} => {}'.format(doc.id, doc.to_dict()))

    [Firebase Firestore屏幕]
    您可以看到该用户已添加。
    firebase14.png

    印象数

    在与Cloud Firestore玩了一点之后,我意识到它比"实时数据库"更易于使用。
    在以前的Firebase中,您只需要使用"实时数据库"来管理数据,并创建示例数据,请按屏幕
    如果我犯了一个错误,我必须从头开始。
    但是,此Cloud Firestore是基于文件夹和文件的想法制作的,我认为人类可以直观地操纵数据。

    结束。