Browse Source

Api para ver vehiculos II

politica
Celestino Rey 10 months ago
parent
commit
2645b55cdc
5 changed files with 44 additions and 3 deletions
  1. +8
    -2
      ReyMotaAppsDj/requirements.txt
  2. +8
    -0
      ReyMotaAppsDj/reymota/repostajes/serializers.py
  3. +3
    -0
      ReyMotaAppsDj/reymota/repostajes/urls.py
  4. +23
    -0
      ReyMotaAppsDj/reymota/repostajes/views.py
  5. +2
    -1
      ReyMotaAppsDj/reymota/reymota/settings.py

+ 8
- 2
ReyMotaAppsDj/requirements.txt View File

@ -1,14 +1,20 @@
asgiref==3.8.1
Django==4.2
django-calculation==1.0.0
djangorestframework==3.15.2
flake8==7.1.1
gunicorn==22.0.0
mccabe==0.7.0
numpy==2.2.2
packaging==24.1
pandas==2.2.3
pillow==10.4.0
psycopg2-binary==2.9.6
pycodestyle==2.12.1
pyflakes==3.2.0
python-dateutil==2.9.0.post0
pytz==2025.1
six==1.17.0
sqlparse==0.5.1
typing_extensions==4.12.2
django-calculation==1.0.0
pandas==2.2.3
tzdata==2025.1

+ 8
- 0
ReyMotaAppsDj/reymota/repostajes/serializers.py View File

@ -0,0 +1,8 @@
from rest_framework import serializers
from .models import Vehiculo
class VehiculoSerializer(serializers.ModelSerializer):
class Meta:
model = Vehiculo
fields = '__all__' # Incluir todos los campos del modelo

+ 3
- 0
ReyMotaAppsDj/reymota/repostajes/urls.py View File

@ -1,6 +1,7 @@
from django.urls import path
from . import views
from .views import api_lista_vehiculos, api_detalle_vehiculo
app_name = 'repostajes'
@ -17,4 +18,6 @@ urlpatterns = [
path('repostajes/<int:repostaje_id>/', views.detalle_repostaje, name='detalle_repostaje'),
path('repostajes/<int:repostaje_id>/editar/', views.editar_repostaje, name='editar_repostaje'),
path('repostajes/<int:repostaje_id>/eliminar/', views.eliminar_repostaje, name='eliminar_repostaje'),
path('api/vehiculos/', api_lista_vehiculos, name='api_lista_vehiculos'),
path('api/vehiculos/<int:vehiculo_id>/', api_detalle_vehiculo, name='api_detalle_vehiculo'),
]

+ 23
- 0
ReyMotaAppsDj/reymota/repostajes/views.py View File

@ -2,8 +2,12 @@
from django.shortcuts import render, get_object_or_404, redirect
from django.contrib.auth.decorators import login_required
from rest_framework.response import Response
from rest_framework.decorators import api_view
from .models import Vehiculo, Repostaje
from .forms import VehiculoForm, RepostajeForm
from .serializers import VehiculoSerializer
@login_required
@ -143,3 +147,22 @@ def eliminar_repostaje(request, repostaje_id):
repostaje = Repostaje.objects.get(pk=repostaje_id)
repostaje.delete()
return redirect('repostajes:lista_repostajes')
@api_view(['GET'])
def api_lista_vehiculos(request):
"""Devuelve la lista de todos los vehiculos."""
vehiculos = Vehiculo.objects.all()
serializer = VehiculoSerializer(vehiculos, many=True)
return Response(serializer.data)
@api_view(['GET'])
def api_detalle_vehiculo(request, vehiculo_id):
"""Devuelve los detalles de un vehiculo específico."""
try:
vehiculo = Vehiculo.objects.get(id=vehiculo_id)
serializer = VehiculoSerializer(vehiculo)
return Response(serializer.data)
except Vehiculo.DoesNotExist:
return Response({'error': 'Vehiculo no encontrado'}, status=404)

+ 2
- 1
ReyMotaAppsDj/reymota/reymota/settings.py View File

@ -40,9 +40,10 @@ INSTALLED_APPS = [
'django.contrib.staticfiles',
'repostajes',
'libros',
'reymotausers',
'lyrics',
'rest_framework',
]
MIDDLEWARE = [


Loading…
Cancel
Save