# Create your views here. from django.shortcuts import render, get_object_or_404, redirect from django.contrib.auth.decorators import login_required from .models import Vehiculo, Repostaje from .forms import VehiculoForm, RepostajeForm @login_required def principal(request): vehiculos = Vehiculo.objects.all() repostajes = Repostaje.objects.all() return render(request, 'repostajes/index.html', {'vehiculos': vehiculos, 'repostajes': repostajes}) # Vistas para los vehiculos @login_required def lista_vehiculos(request): vehiculos = Vehiculo.objects.all() return render(request, 'repostajes/lista_vehiculos.html', {'vehiculos': vehiculos}) @login_required def detalle_vehiculo(request, vehiculo_id): vehiculo = get_object_or_404(Vehiculo, pk=vehiculo_id) libros = Repostaje.objects.filter(vehiculo=vehiculo_id) return render(request, 'repostajes/detalle_vehiculo.html', {'vehiculo': vehiculo, 'libros': libros}) @login_required def nuevo_vehiculo(request): if request.method == 'POST': form = VehiculoForm(request.POST, request.FILES) if form.is_valid(): form.save() return redirect('lista_vehiculoes') else: form = VehiculoForm() return render(request, 'repostajes/form_vehiculo.html', {'form': form}) @login_required def editar_vehiculo(request, vehiculo_id): vehiculo = get_object_or_404(Vehiculo, pk=vehiculo_id) if request.method == 'POST': form = VehiculoForm(request.POST, request.FILES, instance=vehiculo) if form.is_valid(): form.save() return redirect('lista_vehiculoes') else: form = VehiculoForm(instance=vehiculo) return render(request, 'repostajes/form_vehiculo.html', {'form': form}) @login_required def eliminar_vehiculo(request, vehiculo_id): vehiculo = get_object_or_404(Vehiculo, pk=vehiculo_id) vehiculo.delete() return redirect('lista_vehiculoes') # Vistas para los libros @login_required def lista_libros(request): libros = Repostaje.objects.all() return render(request, 'repostajes/lista_libros.html', {'libros': libros}) @login_required def detalle_libro(request, libro_id): libro = get_object_or_404(Repostaje, pk=libro_id) return render(request, 'repostajes/detalle_libro.html', {'libro': libro}) @login_required def nuevo_libro(request): if request.method == 'POST': form = RepostajeForm(request.POST, request.FILES) if form.is_valid(): form.save() return redirect('lista_libros') else: form = RepostajeForm() return render(request, 'repostajes/form_libro.html', {'form': form}) @login_required def editar_libro(request, libro_id): libro = get_object_or_404(Repostaje, pk=libro_id) if request.method == 'POST': form = RepostajeForm(request.POST, request.FILES, instance=libro) if form.is_valid(): form.save() return redirect('lista_libros') else: form = RepostajeForm(instance=libro) return render(request, 'repostajes/form_libro.html', {'form': form}) @login_required def eliminar_libro(request, libro_id): libro = get_object_or_404(Repostaje, pk=libro_id) libro.delete() return redirect('lista_libros')