WIP lookup commands
This commit is contained in:
parent
d39f91a044
commit
09ac82732a
64
odoo-rpc.py
64
odoo-rpc.py
|
@ -336,32 +336,52 @@ def lookup( model, domains ):
|
||||||
def flatten_stack( data ):
|
def flatten_stack( data ):
|
||||||
flat = []
|
flat = []
|
||||||
|
|
||||||
if type(data) == str:
|
def flatten( obj ):
|
||||||
return [ data ]
|
if type(obj) == dict:
|
||||||
|
key = obj.keys()[0]
|
||||||
|
flat += [key]
|
||||||
|
for field in obj[key].keys():
|
||||||
|
flatten( obj[key][field] )
|
||||||
|
|
||||||
|
if type(obj) == list:
|
||||||
|
for item in obj:
|
||||||
|
if type(item) == str:
|
||||||
|
flat += [item]
|
||||||
|
if type(item) == dict:
|
||||||
|
flatten( item )
|
||||||
|
|
||||||
|
if type(obj) == str:
|
||||||
|
|
||||||
if type(data) == list:
|
for obj in data:
|
||||||
res = [ flatten_stack( sub ) for sub in data ]
|
flatten( obj )
|
||||||
flat_list = [item for sublist in res for item in sublist]
|
|
||||||
for item in flat_list:
|
return flat
|
||||||
flat += item
|
# if type(data) == str:
|
||||||
return flat
|
# return [ data ]
|
||||||
|
|
||||||
if type(data) == dict:
|
# if type(data) == list:
|
||||||
for key in data.keys():
|
# res = [ flatten_stack( sub ) for sub in data ]
|
||||||
if '/' in key:
|
# flat_list = [item for sublist in res for item in sublist]
|
||||||
flat.append(key)
|
# for item in flat_list:
|
||||||
# if type(data[key]) != dict:
|
# flat += item
|
||||||
# flat.append(key)
|
# return flat
|
||||||
# else:
|
|
||||||
if type(data[key]) in [list,dict]:
|
# if type(data) == dict:
|
||||||
res = flatten_stack(data[key])
|
# for key in data.keys():
|
||||||
for item in res:
|
# if '/' in key:
|
||||||
flat += item
|
# flat.append(key)
|
||||||
return flat
|
# # if type(data[key]) != dict:
|
||||||
|
# # flat.append(key)
|
||||||
|
# # else:
|
||||||
|
# if type(data[key]) in [list,dict]:
|
||||||
|
# res = flatten_stack(data[key])
|
||||||
|
# for item in res:
|
||||||
|
# flat += item
|
||||||
|
# return flat
|
||||||
|
|
||||||
# jlog( flat )
|
# jlog( flat )
|
||||||
return flat
|
# return flat
|
||||||
# return list(flatten(flat))
|
# # return list(flatten(flat))
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue