1
resposta

Attribute Error

Boa tarde, o meu está dando erro em um arquivo que nem foi mexido e não sei porque. Alguém pode me ajuda? AttributeError views.py

urls.pyserializer.py

1 resposta

Oii Mayara, como você está?

Peço desculpas pela demora em obter um retorno.

O erro de atributo apresentado (AttributeError) informando que o método só está disponível dentro da classe, está sendo levantado devido ao modo em que as classes AlunoSerializer e CursoSerializer, foram declaradas como atributo nos arquivos veiws.py e no arquivo url.py. Nesse caso, não usamos os parênteses () pois queremos apenas informar o qual a classe será utilizada e o local onde ela está e não criarmos um um objeto da classe.

Deixo abaixo os pontos que devemos fazer as mudanças.

Arquivo veiws.py

Modificar no momento da declaração do atributo serializer_class.

class AlunosViewSets(viewsets.ModelViewSet):
    """Exibindo todos os alunos e alunas"""
    queryset = Aluno.objects.all()
    serializer_class = AlunoSerializer

class CursoViewsSets(viewsets.ModelViewSet):
    """Exibindo todos os cursos"""
    queryset = Curso.objects.all()
    serializer_class = CursoSerializer

Arquivo url.py

Modificar no momento em que é realizado o registros das rotas.

router = routers.DefaultRouter()
router.register('alunos', AlunosViewSets, basename='Alunos')
router.register('cursos', CursoViewsSets, basename='Cursos')

Qualquer dúvida fico à disposição.

Abraços e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓. Bons Estudos!