2025-08-31 23:05:53 +02:00

21 lines
881 B
Python

# backend/formulas/views/formula.py
from rest_framework.viewsets import ModelViewSet
from formulas.models.formula import Formula
from formulas.serializers.formula import FormulaSerializer
from formulas.permissions import IsAdminOrEditor
from rest_framework.decorators import action
from rest_framework.response import Response
from formulas.serializers import SymbolSerializer
class FormulaViewSet(ModelViewSet):
queryset = Formula.objects.all()
serializer_class = FormulaSerializer
permission_classes = [IsAdminOrEditor]
lookup_field = "code"
@action(detail=True, methods=['get'], url_path='symbols')
def get_symbols(self, request, code=None):
formula = self.get_object()
symbols = formula.symbols.all()
serializer = SymbolSerializer(symbols, many=True)
return Response(serializer.data)