mirror of
https://github.com/inventree/InvenTree.git
synced 2025-05-01 04:56:45 +00:00
Simplified PART and PROJECT APIs
This commit is contained in:
parent
fe52610fcc
commit
37808f3834
@ -32,16 +32,11 @@ class PartSerializer(serializers.ModelSerializer):
|
|||||||
'stock')
|
'stock')
|
||||||
|
|
||||||
|
|
||||||
class PartCategoryBriefSerializer(serializers.ModelSerializer):
|
class PartCategorySerializer(serializers.ModelSerializer):
|
||||||
|
|
||||||
class Meta:
|
children = serializers.PrimaryKeyRelatedField(many=True, read_only=True)
|
||||||
model = PartCategory
|
|
||||||
fields = ('pk',
|
|
||||||
'name',
|
|
||||||
'description')
|
|
||||||
|
|
||||||
|
parts = serializers.PrimaryKeyRelatedField(many=True, read_only=True)
|
||||||
class PartCategoryDetailSerializer(serializers.ModelSerializer):
|
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = PartCategory
|
model = PartCategory
|
||||||
@ -49,7 +44,9 @@ class PartCategoryDetailSerializer(serializers.ModelSerializer):
|
|||||||
'name',
|
'name',
|
||||||
'description',
|
'description',
|
||||||
'parent',
|
'parent',
|
||||||
'path')
|
'path',
|
||||||
|
'children',
|
||||||
|
'parts')
|
||||||
|
|
||||||
|
|
||||||
class PartTemplateSerializer(serializers.ModelSerializer):
|
class PartTemplateSerializer(serializers.ModelSerializer):
|
||||||
|
@ -5,7 +5,7 @@ from rest_framework import generics, permissions
|
|||||||
from InvenTree.models import FilterChildren
|
from InvenTree.models import FilterChildren
|
||||||
from .models import PartCategory, Part, PartParameter, PartParameterTemplate
|
from .models import PartCategory, Part, PartParameter, PartParameterTemplate
|
||||||
from .serializers import PartSerializer
|
from .serializers import PartSerializer
|
||||||
from .serializers import PartCategoryDetailSerializer
|
from .serializers import PartCategorySerializer
|
||||||
from .serializers import PartParameterSerializer
|
from .serializers import PartParameterSerializer
|
||||||
from .serializers import PartTemplateSerializer
|
from .serializers import PartTemplateSerializer
|
||||||
|
|
||||||
@ -83,7 +83,7 @@ class PartCategoryDetail(generics.RetrieveUpdateDestroyAPIView):
|
|||||||
""" Return information on a single PartCategory
|
""" Return information on a single PartCategory
|
||||||
"""
|
"""
|
||||||
queryset = PartCategory.objects.all()
|
queryset = PartCategory.objects.all()
|
||||||
serializer_class = PartCategoryDetailSerializer
|
serializer_class = PartCategorySerializer
|
||||||
permission_classes = (permissions.IsAuthenticatedOrReadOnly,)
|
permission_classes = (permissions.IsAuthenticatedOrReadOnly,)
|
||||||
|
|
||||||
|
|
||||||
@ -102,7 +102,7 @@ class PartCategoryList(generics.ListCreateAPIView):
|
|||||||
return categories
|
return categories
|
||||||
|
|
||||||
queryset = PartCategory.objects.filter(parent=None)
|
queryset = PartCategory.objects.filter(parent=None)
|
||||||
serializer_class = PartCategoryDetailSerializer
|
serializer_class = PartCategorySerializer
|
||||||
permission_classes = (permissions.IsAuthenticatedOrReadOnly,)
|
permission_classes = (permissions.IsAuthenticatedOrReadOnly,)
|
||||||
|
|
||||||
|
|
||||||
|
@ -29,17 +29,11 @@ class Project(models.Model):
|
|||||||
|
|
||||||
name = models.CharField(max_length=100)
|
name = models.CharField(max_length=100)
|
||||||
description = models.CharField(max_length=500, blank=True)
|
description = models.CharField(max_length=500, blank=True)
|
||||||
category = models.ForeignKey(ProjectCategory, on_delete=models.CASCADE)
|
category = models.ForeignKey(ProjectCategory, on_delete=models.CASCADE, related_name='projects')
|
||||||
|
|
||||||
def __str__(self):
|
def __str__(self):
|
||||||
return self.name
|
return self.name
|
||||||
|
|
||||||
@property
|
|
||||||
def projectParts(self):
|
|
||||||
""" Return a list of all project parts associated with this project
|
|
||||||
"""
|
|
||||||
return self.projectpart_set.all()
|
|
||||||
|
|
||||||
|
|
||||||
class ProjectPartManager(models.Manager):
|
class ProjectPartManager(models.Manager):
|
||||||
""" Manager for handling ProjectParts
|
""" Manager for handling ProjectParts
|
||||||
|
@ -26,14 +26,11 @@ class ProjectSerializer(serializers.ModelSerializer):
|
|||||||
'category')
|
'category')
|
||||||
|
|
||||||
|
|
||||||
class ProjectCategoryBriefSerializer(serializers.ModelSerializer):
|
class ProjectCategorySerializer(serializers.ModelSerializer):
|
||||||
|
|
||||||
class Meta:
|
children = serializers.PrimaryKeyRelatedField(many=True, read_only=True)
|
||||||
model = ProjectCategory
|
|
||||||
fields = ('pk', 'name', 'description')
|
|
||||||
|
|
||||||
|
projects = serializers.PrimaryKeyRelatedField(many=True, read_only=True)
|
||||||
class ProjectCategoryDetailSerializer(serializers.ModelSerializer):
|
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = ProjectCategory
|
model = ProjectCategory
|
||||||
@ -41,4 +38,6 @@ class ProjectCategoryDetailSerializer(serializers.ModelSerializer):
|
|||||||
'name',
|
'name',
|
||||||
'description',
|
'description',
|
||||||
'parent',
|
'parent',
|
||||||
'path')
|
'path',
|
||||||
|
'children',
|
||||||
|
'projects')
|
||||||
|
@ -3,7 +3,7 @@ from rest_framework import generics, permissions
|
|||||||
from InvenTree.models import FilterChildren
|
from InvenTree.models import FilterChildren
|
||||||
from .models import ProjectCategory, Project, ProjectPart
|
from .models import ProjectCategory, Project, ProjectPart
|
||||||
from .serializers import ProjectSerializer
|
from .serializers import ProjectSerializer
|
||||||
from .serializers import ProjectCategoryDetailSerializer
|
from .serializers import ProjectCategorySerializer
|
||||||
from .serializers import ProjectPartSerializer
|
from .serializers import ProjectPartSerializer
|
||||||
|
|
||||||
|
|
||||||
@ -40,7 +40,7 @@ class ProjectCategoryDetail(generics.RetrieveUpdateAPIView):
|
|||||||
"""
|
"""
|
||||||
|
|
||||||
queryset = ProjectCategory.objects.all()
|
queryset = ProjectCategory.objects.all()
|
||||||
serializer_class = ProjectCategoryDetailSerializer
|
serializer_class = ProjectCategorySerializer
|
||||||
permission_classes = (permissions.IsAuthenticatedOrReadOnly,)
|
permission_classes = (permissions.IsAuthenticatedOrReadOnly,)
|
||||||
|
|
||||||
|
|
||||||
@ -57,7 +57,7 @@ class ProjectCategoryList(generics.ListCreateAPIView):
|
|||||||
|
|
||||||
return categories
|
return categories
|
||||||
|
|
||||||
serializer_class = ProjectCategoryDetailSerializer
|
serializer_class = ProjectCategorySerializer
|
||||||
permission_classes = (permissions.IsAuthenticatedOrReadOnly,)
|
permission_classes = (permissions.IsAuthenticatedOrReadOnly,)
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user