mirror of
https://github.com/daniviga/django-ram.git
synced 2025-08-04 21:27:49 +02:00
Add consists API
This commit is contained in:
@@ -25,7 +25,11 @@ class Consist(models.Model):
|
||||
|
||||
|
||||
class ConsistItem(models.Model):
|
||||
consist = models.ForeignKey(Consist, on_delete=models.CASCADE)
|
||||
consist = models.ForeignKey(
|
||||
Consist,
|
||||
on_delete=models.CASCADE,
|
||||
related_name="consist_item"
|
||||
)
|
||||
rolling_stock = models.ForeignKey(RollingStock, on_delete=models.CASCADE)
|
||||
order = models.PositiveIntegerField(default=0, blank=False, null=False)
|
||||
|
||||
|
24
dcc/consist/serializers.py
Normal file
24
dcc/consist/serializers.py
Normal file
@@ -0,0 +1,24 @@
|
||||
from rest_framework import serializers
|
||||
from consist.models import Consist, ConsistItem
|
||||
|
||||
from metadata.serializers import CompanySerializer, TagSerializer
|
||||
|
||||
# from roster.serializers import RollingStockSerializer
|
||||
|
||||
|
||||
class ConsistItemSerializer(serializers.ModelSerializer):
|
||||
# rolling_stock = RollingStockSerializer()
|
||||
|
||||
class Meta:
|
||||
model = ConsistItem
|
||||
fields = ("order", "rolling_stock")
|
||||
|
||||
|
||||
class ConsistSerializer(serializers.ModelSerializer):
|
||||
company = CompanySerializer()
|
||||
consist_item = ConsistItemSerializer(many=True)
|
||||
tags = TagSerializer(many=True)
|
||||
|
||||
class Meta:
|
||||
model = Consist
|
||||
fields = "__all__"
|
6
dcc/consist/urls.py
Normal file
6
dcc/consist/urls.py
Normal file
@@ -0,0 +1,6 @@
|
||||
from django.urls import path
|
||||
from consist.views import ConsistList
|
||||
|
||||
urlpatterns = [
|
||||
path("list", ConsistList.as_view()),
|
||||
]
|
@@ -1,3 +1,21 @@
|
||||
from django.shortcuts import render
|
||||
from rest_framework.generics import ListAPIView, RetrieveAPIView
|
||||
|
||||
# Create your views here.
|
||||
from consist.models import Consist
|
||||
from consist.serializers import ConsistSerializer
|
||||
|
||||
|
||||
class ConsistList(ListAPIView):
|
||||
queryset = Consist.objects.all()
|
||||
serializer_class = ConsistSerializer
|
||||
|
||||
|
||||
class ConsistGet(RetrieveAPIView):
|
||||
queryset = Consist.objects.all()
|
||||
serializer_class = ConsistSerializer
|
||||
lookup_field = "uuid"
|
||||
|
||||
|
||||
# class RosterIdentifier(RetrieveAPIView):
|
||||
# queryset = RollingStock.objects.all()
|
||||
# serializer_class = RollingStockSerializer
|
||||
# lookup_field = "identifier"
|
||||
|
Reference in New Issue
Block a user