Запрос на получение DRF всегда является пустым объектом
У меня настроен Django REST Framework, и я получаю только пустые значения.
Мой сериализатор:
class SettingsSerializer(serializers.Serializer):
class Meta:
model = Settings
fields = fields = ["user_id","traditional","audio_download","show_read","show_pinyin","char_size","pinyin_size","start_date","end_date","speed","volume", "char_colors", "pinyin_colors", "global_dash"]
Моя модель:
class Settings(models.Model):
user = models.ForeignKey(
User, on_delete=models.CASCADE)
traditional = models.BooleanField()
audio_download = models.BooleanField()
show_read = models.BooleanField()
show_pinyin = models.BooleanField()
char_size = models.IntegerField()
pinyin_size = models.IntegerField()
start_date = models.DateField(null=True)
end_date = models.DateField(null=True)
speed = models.IntegerField()
volume = models.IntegerField()
char_colors = models.BooleanField()
pinyin_colors = models.BooleanField()
global_dash = models.BooleanField()
class Meta:
db_table = 'settings'
Мое мнение:
class SettingsRetrieveUpdateDestroyView(generics.RetrieveUpdateDestroyAPIView):
queryset = Settings.objects.all()
serializer_class = SettingsSerializer
lookup_field = 'user_id'
Мой шаблон url:
urlpatterns = [
path('settings/<int:user_id>/', SettingsRetrieveUpdateDestroyView.as_view()),
]
Мой url:
http://127.0.0.1:8000/api/v1/settings/87/
Мой ответ:
{}
И я точно могу подтвердить, что есть запись для user_id = 87:
Почему мой ответ пуст?
Не эксперт, но вы можете попробовать ModelSerializer
class SettingsSerializer(serializers.ModelSerializer):
class Meta:
model = Settings
fields = fields = ["user_id","traditional","audio_download","show_read","show_pinyin","char_size","pinyin_size","start_date","end_date","speed","volume", "char_colors", "pinyin_colors", "global_dash"]