我正在使用Python 2.7和Pyrebase(作为一个软件包与我的Firebase数据库进行通信)。我想在我的数据库中获取新推送对象的key()
。我使用node.js做了很多次,但是我需要一些帮助来使用Python 2.7这是我的API:
@APP.route('/api/product', methods = ['POST'])
def products():
product_details = {
"title": request.form['title'],
"description": request.form['description']
}
new_product = DB.push("product").push(product_details)
print new_product.get().key()
return json.dumps(apiResponse.success(product_details))
该对象将被插入到数据库中,但我不知道如何获取它的密钥。在node.js中,我会使用一个promise,插入后,我会得到密钥。
P.S:因为我使用.ref()
包,我不能使用Pyrebase
我把它添加到我的代码:rec = DB.child("product").push(product_details)
,这样,我就能得到密钥。所以,我的代码现在看起来像这样:
@APP.route('/api/product', methods = ['POST'])
def products():
product_details = {
"title": request.form['title'],
"description": request.form['description']
}
DB.child("product").push(product_details)
rec = DB.child("product").push(product_details)
DB.child("users").child(owner_details['uid']).child('products').update({rec['name']: "true"})
return json.dumps(apiResponse.success(product_details))