CRUD Python con Django 2.0
El CRUD (Crear, Leer, Actualizar y Borrar) es una parte fundamental de cualquier aplicación web. En este artículo, exploraremos cómo implementar un CRUD en Python con Django 2.0.
Crear
Para crear registros en nuestra base de datos utilizando Django, primero necesitamos definir un modelo. Por ejemplo, si queremos crear un modelo para una lista de tareas, podríamos definirlo de la siguiente manera en nuestro archivo models.py:
class Tarea(models.Model):
nombre = models.CharField(max_length=100)
descripcion = models.TextField()
Luego, podemos crear instancias de este modelo en nuestra vista utilizando el formulario correspondiente. Por ejemplo:
def crear_tarea(request):
if request.method == 'POST':
form = TareaForm(request.POST)
if form.is_valid():
form.save()
return redirect('lista_tareas')
else:
form = TareaForm()
return render(request, 'crear_tarea.html', {'form': form})
Leer
Para leer los registros de nuestra base de datos en Django, podemos utilizar consultas en nuestras vistas. Por ejemplo, para obtener todas las tareas creadas en nuestro modelo Tarea, podríamos hacer lo siguiente:
def lista_tareas(request):
tareas = Tarea.objects.all()
return render(request, 'lista_tareas.html', {'tareas': tareas})
Luego, en nuestra plantilla lista_tareas.html, podemos iterar sobre las tareas y mostrarlas en una tabla o lista.
Actualizar
Para actualizar registros en nuestra base de datos, primero necesitamos obtener el objeto que queremos modificar. Luego, podemos actualizar sus campos y guardar los cambios. Por ejemplo:
def editar_tarea(request, tarea_id):
tarea = Tarea.objects.get(pk=tarea_id)
if request.method == 'POST':
form = TareaForm(request.POST, instance=tarea)
if form.is_valid():
form.save()
return redirect('lista_tareas')
else:
form = TareaForm(instance=tarea)
return render(request, 'editar_tarea.html', {'form': form})
Borrar
Para borrar un registro de nuestra base de datos en Django, simplemente necesitamos obtener el objeto y llamar al método delete(). Por ejemplo:
def borrar_tarea(request, tarea_id):
tarea = Tarea.objects.get(pk=tarea_id)
tarea.delete()
return redirect('lista_tareas')
Con estos pasos básicos, hemos implementado un CRUD completo en Python con Django 2.0. ¡Esperamos que esta guía te haya sido útil!