[Django rest framework]: 字符串列表的序列化
我与框架合作 django 和 djando rest
我创造了一个新的终点
. 通过做
请求他我想返回包含作为行列表的数据 /已安装的应用程序列表/
行列表如下所示:
到目前为止,我只使用模型序列化器,一切都很简单。 但现在我不知道如何返回这个行列表
到目前为止,这就是我曾试过的:
我总是得到各种各样的错误。 有关如何返回行列表内容的帮助?
更新
我尝试了代码 @e4c5, 让他成为:
而且我仍然得到错误。 但我不会在任何地方收到错误消息。 有人帮忙吗?
我创造了一个新的终点
installedapps
. 通过做
GET
请求他我想返回包含作为行列表的数据 /已安装的应用程序列表/
行列表如下所示:
installed_apps = ['django_admin_bootstrapped', 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.humanize', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'rest_framework', 'django_js_reverse', 'djcelery', 'bootstrap3', 'foo', 'bar', 'apirest']
到目前为止,我只使用模型序列化器,一切都很简单。 但现在我不知道如何返回这个行列表
到目前为止,这就是我曾试过的:
class InstalledAppsViewSet/viewsets.ViewSet/:
serializer_class = serializers.InstalledAppsSerializer
def list/self, request/:
from credits.views import GetInstalledApps
installed_apps = GetInstalledApps.get_installed_apps//
serializer = serializers.InstalledAppsSerializer/
instance=installed_apps, many=True/
return Response/serializer.data/
class InstalledAppsSerializer/serializers.ListField/:
name = serializers.CharField/max_length=256/
child = serializers.CharField//
installed_apps_field = serializers.SerializerMethodField/
'get_installed_apps'/
我总是得到各种各样的错误。 有关如何返回行列表内容的帮助?
更新
我尝试了代码 @e4c5, 让他成为:
class InstalledAppsViewSet/viewsets.ViewSet/:
serializer_class = serializers.InstalledAppsSerializer
def list/self, request/:
serializer = serializers.InstalledAppsSerializer
class InstalledAppsSerializer/serializers.Serializer/:
name = serializers.CharField/max_length=256/
child = serializers.CharField//
installed_apps = serializers.SerializerMethodField/'get_the_installed_apps'/
def get_the_installed_apps/self/:
from credits.views import GetInstalledApps
installed_apps = GetInstalledApps.get_installed_apps//
return installed_apps
而且我仍然得到错误。 但我不会在任何地方收到错误消息。 有人帮忙吗?
没有找到相关结果
已邀请:
3 个回复
小姐请别说爱
赞同来自:
http://www.django-rest-framewo ... field
,
ListField是一类检查对象列表的字段。
班级 ListField 还支持一个声明性样式,允许您编写列表字段的重用类。
您可以为继承的序列化器编写一个用户字段
序列化的形式 drf, 这是一个线列表。 也许这是,这个例子已经在文档中显示。 DRF.
现在我们可以重用我们的用户类 StringListField 在我们的整个申请中,没有为他提供儿童论点。
这是从文件中,我没有尝试过。 但我希望你能得到你正在寻找的东西。
例如,您可以使用Serializer中的自定义字段,
快网
赞同来自:
http://www.django-rest-framewo ... field
检查对象列表的字段类。
当您的一个类成员是列表时,您可以使用它。 但你不想使用 ListField 作为序列化器,因为它不是
董宝中
赞同来自:
而且我仍然得到错误。 但我不会在任何地方收到错误消息
.
部分问题:在发送请求后,错误应在您从视图中收到的答案。
如果你有这样的东西:
,
要打印答案的内容:
- 错误应该在那里。