Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/364.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/json/13.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在Django中序列化不同类型的模型实例(包括主键和外键)的正确方法是什么_Python_Json_Django_Serialization - Fatal编程技术网

Python 在Django中序列化不同类型的模型实例(包括主键和外键)的正确方法是什么

Python 在Django中序列化不同类型的模型实例(包括主键和外键)的正确方法是什么,python,json,django,serialization,Python,Json,Django,Serialization,我想要两个不同的模型的属性。py类(关系),比如user\u name和user\u workspace\u key表单user表和user\u workspace\u name来自UserWorkspace表 这里,user\u workspace\u key是外键。此字段的格式为list,因为我使用values\u list()方法来提取它们。下一步是组合这两个列表并使用序列化程序,这样我就可以从中准备一个json。我在这里遇到的问题是,Django的default序列化程序不支持此功能。它

我想要两个不同的
模型的属性。py
(关系),比如
user\u name
user\u workspace\u key
表单
user
表和
user\u workspace\u name
来自
UserWorkspace

这里,
user\u workspace\u key
是外键。此字段的格式为
list
,因为我使用
values\u list()
方法来提取它们。下一步是组合这两个列表并使用序列化程序,这样我就可以从中准备一个
json
。我在这里遇到的问题是,
Django的
default序列化程序不支持此功能。它不允许将不同类型的模型实例连接在一起(因此无法形成一个json)

示例代码: 因此,问题是要有一个
序列化程序
,它支持
UUID
,并允许我将不同类型的模型实例组合在一起(以便形成一个
json
)。请建议我如何解决这个问题。除了Django的默认的序列化程序,还有其他替代方案吗?或者什么方法只允许默认序列化程序中的
UUID


请帮助。

我假设您已经发现了Django Rest框架,它们将帮助您创建所需的json结构。关于
UUID
字段,请阅读谢谢。。我正在尝试这个解决方案。我假设您已经发现了Django Rest框架,它们将帮助您创建所需的json结构。关于
UUID
字段,请阅读谢谢。。我正在尝试这个解决方案。
#Fields from `User` table in `models.py`
user_list = user_object.values_list('user_name','user_workpace_key','user_role')
#Fields from UserWorkspace table in models.py
user_workspace_details_list = User_ws_object.values_list('user_workspace_name ','user_workpace_key')
#need to do something like this and make a json of f1 and f2
f1 = serializers.serialize('json', list(user_object), fields = ('user_name','user_workpace_key','user_role'))
f2 = serializers.serialize('json', list(User_ws_object), fields = ('user_workspace_name','user_workpace_key'))
#Here, I am using UUID (default implementation) field of Django 1.8 .
#If I try this, json.dumps(list(user_workspace_list)), 
#it shows error as :"UUID is not JSON serializable".