diff --git a/project/api/models.py b/project/api/models.py index dd857e4..f9e3e14 100755 --- a/project/api/models.py +++ b/project/api/models.py @@ -184,6 +184,14 @@ class Linea(models.Model): managed = False db_table = 'linea' +class LineaParadero(models.Model): + id_linea_paradero = models.AutoField(primary_key=True) + id_linea = models.ForeignKey(Linea, models.DO_NOTHING, db_column='id_linea') + id_paradero = models.ForeignKey('Paradero', models.DO_NOTHING, db_column='id_paradero') + + class Meta: + managed = False + db_table = 'linea_paradero' class Operador(models.Model): id_operador = models.CharField(primary_key=True, max_length=150) @@ -233,15 +241,6 @@ class ParaderoImagen(models.Model): managed = False db_table = 'paradero_imagen' -class ParaderoLinea(models.Model): - id_paradero_linea = models.AutoField(primary_key=True) - id_paradero = models.ForeignKey(Paradero, models.DO_NOTHING, db_column='id_paradero', blank=False, null=False) - id_linea = models.ForeignKey(Linea, models.DO_NOTHING, db_column='id_linea', blank=False, null=False) - - class Meta: - managed = True - db_table = 'paradero_linea' - class Persona(models.Model): rut = models.DecimalField(primary_key=True, max_digits=12, decimal_places=0) diff --git a/project/api/serializers.py b/project/api/serializers.py index a9af9dd..aa4f7c6 100755 --- a/project/api/serializers.py +++ b/project/api/serializers.py @@ -71,12 +71,6 @@ class ParaderoImagenSerializer(serializers.ModelSerializer): representation['url'] = request.build_absolute_uri(f'/api/paraderos-image/{instance.id_paradero_imagen}/') return representation -class ParaderoLineaSerializer(serializers.ModelSerializer): - class Meta: - model = models.ParaderoLinea - fields = '__all__' - - class OperadorSerializer(serializers.ModelSerializer): class Meta: model = models.Operador @@ -87,6 +81,11 @@ class LineaSerializer(serializers.ModelSerializer): model = models.Linea fields = '__all__' +class LineaParaderoSerializer(serializers.ModelSerializer): + class Meta: + model = models.LineaParadero + fields = '__all__' + class UsuarioSerializer(serializers.ModelSerializer): # muestro informacion de persona en un objeto aparte persona = serializers.SerializerMethodField() diff --git a/project/api/urls.py b/project/api/urls.py index 4ce6281..1114f80 100755 --- a/project/api/urls.py +++ b/project/api/urls.py @@ -3,7 +3,7 @@ from rest_framework import routers # from api import views from api.views import usuario, auth, aplicacion, tipo, persona, comuna, region, paradero, rol, rolaplicacion from api.views import mapa, linea, letrero_lur, operador -from api.views import paradero_imagen, paradero_linea +from api.views import paradero_imagen, linea_paradero from api.views import dispositivo router = routers.DefaultRouter() @@ -20,8 +20,8 @@ router.register('comunas', comuna.ComunaViewSet) router.register('regiones', region.RegionViewSet) router.register('paraderos', paradero.ParaderoViewSet) router.register('paraderos-image', paradero_imagen.ParaderoImagenListView, basename='paradero_imagen') -router.register('paraderos-linea', paradero_linea.ParaderoLineaViewSet) router.register('lineas', linea.LineaViewSet) +router.register('lineas-paradero', linea_paradero.LineaParaderoViewSet) router.register('letreros-lur', letrero_lur.LetreroLUR_ViewSet) router.register('operadores', operador.OperadorViewSet) router.register('roles', rol.RolViewSet) diff --git a/project/api/views/linea_paradero.py b/project/api/views/linea_paradero.py new file mode 100755 index 0000000..52e329b --- /dev/null +++ b/project/api/views/linea_paradero.py @@ -0,0 +1,11 @@ +from rest_framework import viewsets +from django_filters.rest_framework import DjangoFilterBackend +from api.serializers import LineaParaderoSerializer +from api.models import LineaParadero +import logging + +class LineaParaderoViewSet(viewsets.ModelViewSet): + queryset = LineaParadero.objects.all() + serializer_class = LineaParaderoSerializer + filter_backends = [DjangoFilterBackend] + filterset_fields = ['id_linea', 'id_paradero'] \ No newline at end of file diff --git a/project/api/views/paradero_linea.py b/project/api/views/paradero_linea.py deleted file mode 100755 index 6b0c1a9..0000000 --- a/project/api/views/paradero_linea.py +++ /dev/null @@ -1,11 +0,0 @@ -from rest_framework import viewsets -from django_filters.rest_framework import DjangoFilterBackend -from api.serializers import ParaderoLineaSerializer -from api.models import ParaderoLinea -import logging - -class ParaderoLineaViewSet(viewsets.ModelViewSet): - queryset = ParaderoLinea.objects.all() - serializer_class = ParaderoLineaSerializer - filter_backends = [DjangoFilterBackend] - filterset_fields = ['id_linea', 'id_paradero'] \ No newline at end of file