2 回答

TA貢獻(xiàn)1757條經(jīng)驗(yàn) 獲得超7個(gè)贊
90% 的情況是這樣,但是正在創(chuàng)建的嵌套表插入的字段和值數(shù)組填充了相同的記錄信息,而不是創(chuàng)建與每個(gè)父 place_nm 插入關(guān)聯(lián)的唯一nestedTableInsert 記錄信息。仍然需要弄清楚這個(gè)最內(nèi)層的迭代。
tableInsert = []
i = 0
for k, v in mainDictNorm.iteritems():
tableInsert.append({"table": k, "inserts": []})
if v:
for d in v:
flds = list(d.keys())
if k != "place_nm":
tableInsert[i]["inserts"].append({
"fields": flds,
"values": [d[f] for f in flds]})
else:
i = 0
nestedTableInsert = []
for k2, v2 in nestDictNorm.iteritems():
nestedTableInsert.append({"table": k2, "inserts": []})
if v2:
for d2 in v2:
flds2 = list(d2.keys())
tableInsert[i],nestedTableInsert[i]["inserts"].append({
"fields": flds2,
"values": [d2[f2] for f2 in flds2]})
i += 1
tableInsert[i]["inserts"].append({
"fields": flds,
"values": [d[f] for f in flds],
"nestedTableInsert": nestedTableInsert})
i += 1

TA貢獻(xiàn)1982條經(jīng)驗(yàn) 獲得超2個(gè)贊
constJSON = []
i = 0
for k, v in datDictNorm.iteritems():
constJSON.append({"table": k, "inserts": []})
if v:
for d in v:
flds = list(d.keys())
constJSON[i]["inserts"].append({
"fields": flds,
"values": [d[f] for f in flds]
})
if k == "table_x":
constJSON[i]["nestedTableInsert"].append({
"fields": flds2,
"values": [d2[f2] for f2 in flds2 if k in thing]
})
i += 1
myJSON = json.dumps(constJSON)
添加回答
舉報(bào)