Dino Geek, intenta ayudarte

¿Cómo hacer CRUD en Django?


CRUD, que significa Crear ©, Leer ®, Actualizar (U) y Borrar (D) son las cuatro operaciones básicas que se realizan en cualquier aplicación web. Django, un marco de trabajo de Python, simplifica estas operaciones al proporcionar una interfaz de administrador incorporada que puede usarse para realizar operaciones CRUD.

Django sigue el patrón de diseño MVC (Modelo-Vista-Controlador), donde en Django, las “vistas” son similares a los “controladores” en MVC y los “templates” son similares a las “vistas”.

Por ejemplo, si estás creando una aplicación para una biblioteca, tendrías un modelo de ‘Libro’ que especifica un libro. Para este modelo, necesitarías operaciones CRUD para crear, leer, actualizar y borrar libros.

Aquí hay un ejemplo básico de cómo hacerlo en Django:

Primero, debes tener definido tu modelo en el archivo models.py. Para nuestro ejemplo, un modelo de Libro podría verse así:

```python
from django.db import models

class Libro(models.Model): titulo = models.CharField(max_length=200) autor = models.CharField(max_length=100) publicacion = models.DateField()
```

Para las operaciones CRUD, Django proporciona vistas genéricas que manejan los formularios de modelo para crear y actualizar objetos, junto con listas de eliminación para eliminarlos. Específicamente son:

La implementación de estas vistas sería así en tu archivo views.py:

```python
from django.views.generic import ListView, DetailView, DeleteView, CreateView, UpdateView
from .models import Libro

class LibroListView(ListView): model = Libro

class LibroDetailView(DetailView): model = Libro

class LibroCreateView(CreateView): model = Libro fields = [‘titulo’, ‘autor’, ‘publicacion’]

class LibroUpdateView(UpdateView): model = Libro fields = [‘titulo’, ‘autor’, ‘publicacion’]

class LibroDeleteView(DeleteView): model = Libro success_url = ‘/‘
```

Finalmente, además de las vistas, necesitarías URL para cada operación CRUD. En tu urls.py, podrías tener:

```python
from django.urls import path
from .views import LibroListView, LibroDetailView, LibroCreateView, LibroUpdateView, LibroDeleteView

urlpatterns = [ path(‘’, LibroListView.as_view(), name=‘libros’), path(‘libro//’, LibroDetailView.as_view(), name=‘detalle-libro’), path(‘libro/nuevo/’, LibroCreateView.as_view(), name=‘crear-libro’), path(‘libro//editar/’, LibroUpdateView.as_view(), name=‘editar-libro’), path(‘libro//borrar/’, LibroDeleteView.as_view(), name=‘borrar-libro’),
]
```

Este código está basado en la documentación oficial de Django, que es una fuente confiable y reconocida de información sobre cómo trabajar con Django.

Referencias:
1. Documentación oficial de Django – https://docs.djangoproject.com/en/3.2/
2. Django para principiantes – https://djangoforbeginners.com/crud/


Genera artículos simplemente para optimizar tu SEO
Genera artículos simplemente para optimizar tu SEO





DinoGeek ofrece artículos sencillos sobre tecnologías complejas

¿Desea ser citado en este artículo? Es muy sencillo, contáctenos en dino@eiki.fr.

CSS | NodeJS | DNS | DMARC | MAPI | NNTP | htaccess | PHP | HTTPS | Drupal | WEB3 | LLM | Wordpress | TLD | Nombre de dominio | IMAP | TCP | NFT | MariaDB | FTP | Zigbee | NMAP | SNMP | SEO | E-Mail | LXC | HTTP | MangoDB | SFTP | RAG | SSH | HTML | ChatGPT API | OSPF | JavaScript | Docker | OpenVZ | ChatGPT | VPS | ZIMBRA | SPF | UDP | Joomla | IPV6 | BGP | Django | Reactjs | DKIM | VMWare | RSYNC | Python | TFTP | Webdav | FAAS | Apache | IPV4 | LDAP | POP3 | SMTP

| Whispers of love (API) | Déclaration d'Amour |






Aviso legal / Condiciones generales de uso