我想在数据库中存储一个数组。为此,我在模型中使用了这种类型的ArrayType:[[[0.29, 10.27]]]
。我想使用序列化程序来创建GET、POST和PUT请求。
这是我的模型:
型号.py
class Area(models.Model):
osm = ArrayField(
ArrayField(
ArrayField(
models.FloatField(),
size=2,
),
),
)
这是我的序列化程序:
序列化程序.py
class AreaSerializer(serializers.ModelSerializer):
class Meta:
model = Area
fields = ['osm', ]
以下是我的观点:
视图.py
class ShopAreaList(ShopCustomListView):
"""Get or create areas for a shop"""
queryset = Shop.objects.all()
lookup_field = 'path'
def get(self, request, path):
"""Depends on mustBeLogged to get areas of a shop"""
shop = self.get_object()
areas = Area.objects.filter(shop=shop)
serializer = AreaSerializer(areas, many=True)
return Response(serializer.data)
def post(self, request, path):
"""For admin or shop owner to create areas"""
shop = self.get_object()
serializer = AreaSerializer(data=request.data)
if serializer.is_valid():
serializer.save(shop=shop)
return Response(serializer.data)
return Response(serializer.errors)
以下是我得到的数据:
{
"osm": [[[0.29, 10.27]]]
}
当我尝试运行POST方法时,出现以下错误:
Error binding parameter 0 - probably unsupported type.
我不知道我能做些什么来修复这个错误
提前感谢您的帮助
目前没有回答
相关问题 更多 >
编程相关推荐