У меня есть два данных Json, данные 1 и данные 2, и я хочу объединить их в документе магазина огня, когда я пытаюсь объединить два словаря, отображается только половина части.
data = {
u'name': u'Los Angeles',
u'state': u'CA',
u'country': u'USA'
}
data2= {
u'name': u'MIAMI',
u'state': u'CA',
u'country': u'USA'
}
db.collection(u'cities').document(u'LA').set(data)
city_ref = db.collection(u'cities').document(u'LA')
city_ref.set({
u'name': u'MIAMI',
u'state': u'CA',
u'country': u'USA'
}, merge=True)
#only this part is showing
{
u'name': u'MIAMI',
u'state': u'CA',
u'country': u'USA'
}
#when i, doing this
data = {
u'name': u'Los Angeles',
u'state': u'CA',
u'country': u'USA',
u'name': u'MIAMI',
u'state': u'CA',
u'country': u'USA'}
#only this much part is showing in my field
u'name': u'MIAMI',
u'state': u'CA',
u'country': u'USA'
есть ли способ объединить эти два в python






Вы можете иметь только одно значение для каждого имени поля. Объединение полезно, когда вы хотите добавить дополнительные поля в тот же документ, например:
data = {
u'name': u'Los Angeles',
u'state': u'CA',
u'country': u'USA'
}
db.collection(u'cities').document(u'LA').set(data)
city_ref = db.collection(u'cities').document(u'LA')
city_ref.set({
u'name2': u'MIAMI',
u'state2': u'CA',
u'country2': u'USA'
}, merge=True)
# Result
data = {
u'country': u'USA',
u'country2': u'USA',
u'name': u'Los Angeles',
u'name2': u'MIAMI',
u'state': u'CA',
u'state2': u'CA',}
Вы можете использовать этот код (он добавит новые поля, если они не существуют, и обновит их, если они уже существуют).
doc.reference.update({
u'newField1': newValue1
u'newField2': newValue2
})