首页 > 解决方案 > Django 正在改变我的整数列表的顺序

问题描述

所以我面临以下问题。

在 Android Studio 中创建整数列表时:

List<Integer> myIDs= new ArrayList<>();

我将整数(id)按给定的顺序排列,结果为 pe:

myIds = [69, 65, 67]

我正在使用Retrofit将请求发送到服务器:

@POST("looks/")
@FormUrlEncoded
Call<Look> createLook(
        @Field("myIds") List<Integer> myIds, 
        ...,
        ...);



mAPIService.createLook(myIDs, ..., ...).enqueue(new Callback<Look>() {
                    @Override
                    public void onResponse(Call<Look> call, Response<Look> response) {

                        if (response.isSuccessful()) {
                            Log.d("OK: ", "post submitted to API." + response.body().toString());
                            // We finish the Activity.
                            finish();
                        } else {
                            ...
                            ...
                        }
                        finish();
                    }

                    @Override
                    public void onFailure(Call<Look> call, Throwable t) {

                    }
                });

问题是,当我将列表发送到我的 django 服务器时,它会自行订购:

"myIds ": [
        65,
        67,
        69
    ]

关于为什么会发生这种情况的任何想法,我该如何解决?

在服务器上,这是我的 models.py

...
myIds = models.ManyToManyField('garments.Garment')
...

视图.py

class LookList(generics.ListCreateAPIView):
    serializer_class = LookSerializer

    def get_queryset(self):
        queryset = Look.objects.all()
        username = self.request.query_params.get('username',None)
        date = self.request.query_params.get('date', None)
        if date is not None:
            queryset = queryset.filter(date=date)
        if username is not None:
            queryset = queryset.filter(username=username)
        return queryset


class LookDetail(generics.RetrieveUpdateDestroyAPIView):
    queryset = Look.objects.all()
    serializer_class = LookSerializer

序列化程序.py

class LookSerializer(serializers.ModelSerializer):

    class Meta:
        model = Look
        fields = ('id','garment_id','username','date')

提前谢谢你!

标签: pythondjangolistarraylistretrofit

解决方案


推荐阅读