【发布时间】:2018-01-05 05:28:26
【问题描述】:
我有以下数据库规则,不允许将“公司:8”模拟写入数据库。
{
"rules": {
".read": "auth != null",
".write": "auth != null",
"companies": {
".validate": "(data.exists() && (newData.val() === data.val() + 1)) || (!data.exists() && newData.val() == 0)"
}
}
}
但是,当我尝试使用 Firebase Python SDK 将“公司:20”写入数据库时,这些规则也不允许这样做:
In [1]: import firebase_admin
In [2]: from firebase_admin import credentials, db
In [3]: cred = credentials.Certificate('serviceAccountCredentials_dev_async.json
...: ')
In [4]: firebase_admin.initialize_app(cred, {'databaseURL': 'https://async-testi
...: ng.firebaseio.com/'})
Out[4]: <firebase_admin.App at 0x7fc50c00c080>
In [5]: ref = db.reference()
In [6]: ref.update({'companies': 20})
我做错了什么?
【问题讨论】:
标签: python firebase firebase-realtime-database firebase-security firebase-admin