У меня странная проблема, я думаю, она исходит из кеша между django и postgres, но я не уверен.
У меня есть несколько таблиц в базе данных, но проблема возникает только с одной из них , Допустим, таблица SpeakingSession. Каждый раз, когда я делаю изменения, такие как добавление нового экземпляра, редактирование экземпляра, запрос API вызова не возвращает изменение; данные обновляются только при перезапуске сервера apache2.
Например: у меня 7 записей SpeakingSession, затем я добавляю новую. Но приведенная ниже команда печати возвращает 7.
class SpeakingSessionViewSet(viewsets.ModelViewSet):
queryset = SpeakingSession.objects.all()
def list(self, request):
print(self.queryset.count())
return super(SpeakingSessionViewSet, self).list(request)
Итак, я перезагружаю сервер apache2, затем он возвращает 8.
Есть идеи, как решить эту проблему? Большое спасибо!
Это моя модель и мой сериализатор:
class SpeakingSession(models.Model):
sessionDefinition = models.ForeignKey('SessionDefinition', on_delete=models.CASCADE)
startTime = models.TimeField()
endTime = models.TimeField()
participants = models.ManyToManyField('Profile', default=None, blank=True)
class SpeakingSessionSerializer(serializers.ModelSerializer):
class Meta:
model = SpeakingSession
fields = ('id', 'sessionDefinition', 'startTime', 'endTime', 'participants')