I am trying to Post data to the TrackSerializer but getting error

Models

from django.db import models
from django.utils.translation import gettext_lazy as _

# Create your models here.
class AlbumType(models.Model):
    album_name = models.CharField(max_length=100)
    type = models.CharField(max_length=100)

    class Meta:
        ordering = ['album_name']
        verbose_name_plural = 'Album Type'
    def __str__(self):
        return str(self.album_name)

class Album(models.Model):
    album_name = models.ForeignKey(AlbumType, verbose_name=_("Album
Type"), on_delete=models.CASCADE)
    artist = models.CharField(max_length=100)

    class Meta:
        ordering = ['album_name']
        verbose_name_plural = 'Album'
    def __str__(self):
        return str(self.album_name)

class Track(models.Model):
    album = models.ForeignKey(Album, verbose_name=_("Album"),
on_delete=models.CASCADE)
    order = models.IntegerField()
    title = models.CharField(max_length=100)
    duration = models.IntegerField()

    class Meta:
        verbose_name_plural = 'Track'
        # unique_together = ['album', 'order']
        ordering = ['order']

    def __str__(self):
        return '%d: %s' % (self.order, self.title)

Serializer

from rest_framework import serializers
from .models import *

class AlbumTypeSerializer(serializers.ModelSerializer):

    class Meta:
        model = AlbumType
        fields =  '__all__'

class AlbumSerializer(serializers.ModelSerializer):
    album_name =  serializers.StringRelatedField(many=True)
    class Meta:
        model = Album
        fields =  '__all__'

class TrackSerializer(serializers.ModelSerializer):
    album = serializers.SlugRelatedField(
        queryset=Album.objects.all(),
        slug_field='album_name'
    )
    class Meta:
        model = Track
        fields = '__all__'


View

from django.shortcuts import render
from rest_framework import viewsets
from .models import *
from .pollSerializer import *


class AlbumType_Viewsets(viewsets.ModelViewSet):

    queryset = AlbumType.objects.all()
    serializer_class = AlbumTypeSerializer

class Track_Viewsets(viewsets.ModelViewSet):

    queryset = Track.objects.all()
    serializer_class = TrackSerializer

class Album_Viewsets(viewsets.ModelViewSet):

    # queryset = Album.objects.all()
    serializer_class = AlbumSerializer

    def get_queryset(self):
        return 
Album.objects.all().filter(album__album_name=self.request.user)[:1]

POST

{
    "album": "The Eye",
    "order": 1,
    "title": "New Me",
    "duration": 3
}

Error

{
    "album": [
        "Invalid value."
    ]
}

-- 
You received this message because you are subscribed to the Google Groups 
"Django REST framework" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to django-rest-framework+unsubscr...@googlegroups.com.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-rest-framework/CADteO39udxyvRYnoh_JWP9gKW6JzTXbSY3cv%2BR084fV0_4FjqA%40mail.gmail.com.

Reply via email to