|
@ -24,7 +24,6 @@ class Base(models.AbstractModel): |
|
|
field_name, json_key = field_name.split(':') |
|
|
field_name, json_key = field_name.split(':') |
|
|
return field_name, json_key, subparser |
|
|
return field_name, json_key, subparser |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@api.multi |
|
|
@api.multi |
|
|
def jsonify(self, parser): |
|
|
def jsonify(self, parser): |
|
|
""" Convert the record according to the parser given |
|
|
""" Convert the record according to the parser given |
|
@ -41,8 +40,8 @@ class Base(models.AbstractModel): |
|
|
return a list of object even if there is only one element in input |
|
|
return a list of object even if there is only one element in input |
|
|
|
|
|
|
|
|
By default the key into the json is the name of the field extracted |
|
|
By default the key into the json is the name of the field extracted |
|
|
from the model. If you need to specify an alternate name to use as key, you |
|
|
|
|
|
can define your mapping as follow into the parser definition: |
|
|
|
|
|
|
|
|
from the model. If you need to specify an alternate name to use as |
|
|
|
|
|
key, you can define your mapping as follow into the parser definition: |
|
|
|
|
|
|
|
|
parser = [ |
|
|
parser = [ |
|
|
'field_name:json_key' |
|
|
'field_name:json_key' |
|
@ -61,7 +60,8 @@ class Base(models.AbstractModel): |
|
|
res[json_key] = rec[field_name].jsonify(subparser) |
|
|
res[json_key] = rec[field_name].jsonify(subparser) |
|
|
elif field_type in ('many2one', 'reference'): |
|
|
elif field_type in ('many2one', 'reference'): |
|
|
if rec[field_name]: |
|
|
if rec[field_name]: |
|
|
res[json_key] = rec[field_name].jsonify(subparser)[0] |
|
|
|
|
|
|
|
|
res[json_key] =\ |
|
|
|
|
|
rec[field_name].jsonify(subparser)[0] |
|
|
else: |
|
|
else: |
|
|
res[json_key] = None |
|
|
res[json_key] = None |
|
|
else: |
|
|
else: |
|
|