I was executing an api (using GET method) of mine that has been
created using Django rest framework.
http://127.0.0.1:8000/api/v1/savedata
Previously it was returning JSON records.When I'm executing this api end point its throwing error => djongo.sql2mongo.MigrationError: tweet_location.
Обратите внимание, что tweet_location - это поле, которое я определил позже в моей модели. Также обратите внимание, что я использую MongoDB и соединитель Djongo для подключения MongoDb из Django rest framework.
/*** view code **/
class TwitterdashappViewSet(viewsets.ModelViewSet):
#queryset = TwitterMaster.objects.all()
permission_classes = [permissions.AllowAny]
serializer_class = TwitterdashappSerializer
def get_queryset(self):
queryset = TwitterMaster.objects.all()
tt = self.request.query_params.get('tt')
if tt:
condition = Q(tweet_text__contains=tt)&Q(tweet_favorite_count=13)
queryset = queryset.filter(condition)
return queryset
def create(self, request, *args, **kwargs):
serializer = TwitterdashappSerializer(data=request.data)
serializer.is_valid(raise_exception=True)
serializer.save()
return Response(serializer.data)
/**** Model File ***/
class TwitterMaster(models.Model):
tweet_text = models.TextField(blank=True, null=True)
tweet_favorite_count = models.CharField(blank=True, null=True)
tweet_location = models.TextField(blank=True, null=True)
class Meta:
db_table = "twitterdashapp_twittermaster"
/** Serializer code */
class TwitterdashappSerializer(serializers.Serializer):
tweet_text = serializers.JSONField()
tweet_favorite_count = serializers.JSONField()
tweet_location = serializers.JSONField()
def create(self, validated_data):
instance = TwitterMaster.objects.create(**validated_data)
return instance