擅长:python、mysql、java
<p>您可以编写自己的JsonEncoder(或使用@PaulDapolito描述的方法)。但,这两种方法都只在您知道键为<code>manager_object</code>的项的类型时才起作用。
From docs:要使用自定义JSONEncoder子类(例如,重写default()方法以序列化其他类型的子类),请使用cls kwarg指定它;否则将使用JSONEncoder。在</p>
<pre><code># Example of custom encoder
class CustomJsonEncoder(json.JSONEncoder):
def default(self, o):
# Here you can serialize your object depending of its type
# or you can define a method in your class which serializes the object
if isinstance(o, (Employee, Autocar)):
return o.__dict__ # Or another method to serialize it
else:
return json.JSONEncoder.encode(self, o)
# Usage
json.dumps(items, cls=CustomJsonEncoder)
</code></pre>