Tutorial desde Cero de Django REST Framework (DRF): Creación de una REST API con métodos GET, POST, PUT y DELETE ✅

Posted by

Django REST Framework Tutorial

Django REST Framework: Crea una REST API (GET, POST, PUT, DELETE) | Tutorial desde Cero

En este tutorial aprenderemos a crear una REST API utilizando Django REST Framework. La REST API nos permitirá realizar operaciones como GET, POST, PUT y DELETE en nuestra base de datos.

Pasos para crear una REST API con Django REST Framework:

  1. 1. Instalar Django y Django REST Framework:
  2. Para empezar, necesitamos instalar Django y Django REST Framework en nuestro entorno. Puedes hacerlo a través de pip:

            
                pip install django
                pip install djangorestframework
            
        
  3. 2. Crear un nuevo proyecto Django:
  4. Crear un nuevo proyecto Django utilizando el comando startproject:

            
                django-admin startproject myproject
            
        
  5. 3. Crear una nueva app:
  6. Crear una nueva app en el proyecto Django utilizando el comando startapp:

            
                python manage.py startapp myapp
            
        
  7. 4. Crear un modelo en models.py:
  8. Define un modelo en models.py de tu app para representar los datos que queremos exponer a través de la REST API.

            
                from django.db import models
                
                class MyModel(models.Model):
                    name = models.CharField(max_length=100)
                    description = models.TextField()
            
        
  9. 5. Crear un serializador en serializers.py:
  10. Crea un serializador en serializers.py para convertir los datos del modelo en un formato JSON.

            
                from rest_framework import serializers
                from .models import MyModel
                
                class MyModelSerializer(serializers.ModelSerializer):
                    class Meta:
                        model = MyModel
                        fields = ['id', 'name', 'description']
            
        
  11. 6. Crear una vista en views.py:
  12. Crea una vista en views.py que maneje las operaciones GET, POST, PUT y DELETE.

            
                from rest_framework import viewsets
                from .models import MyModel
                from .serializers import MyModelSerializer
                
                class MyModelViewSet(viewsets.ModelViewSet):
                    queryset = MyModel.objects.all()
                    serializer_class = MyModelSerializer
            
        
  13. 7. Configurar las URLs en urls.py:
  14. Configura las URLs en urls.py de tu app para enlazar las vistas con las URLs correspondientes.

            
                from django.urls import path, include
                from rest_framework.routers import DefaultRouter
                from .views import MyModelViewSet
                
                router = DefaultRouter()
                router.register('mymodel', MyModelViewSet)
                
                urlpatterns = [
                    path('', include(router.urls)),
                ]
            
        
  15. 8. Ejecutar el servidor:
  16. Ejecuta el servidor Django para probar tu REST API:

            
                python manage.py runserver
            
        

¡Listo! Ahora puedes acceder a tu REST API a través de las URLs proporcionadas por Django REST Framework. Prueba realizar operaciones GET, POST, PUT y DELETE utilizando herramientas como Postman o curl.

0 0 votes
Article Rating
32 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
@UskoKruM2010
7 months ago

🔴 * HOSTING RECOMENDADO *

Hostinger: https://www.hostinger.com/uskokrum2010

¡Usa el código USKOKRUM2010 para un buen descuento!

👨‍💻 Código Fuente: https://github.com/UskoKruM/django-rest-framework-tutorial

Instalación de Django en Entorno Virtual de Python (virtualenv) ✅ :

http://youtu.be/M4NIs4BM1dk

CURSO DE PYTHON 3 🐍 :

http://www.youtube.com/playlist?list=PL_wRgp7nihybbJ2vZaVGI5TDdPaK_dFuC

CURSO DE DJANGO 🦄 :

https://www.youtube.com/playlist?list=PL_wRgp7nihyZsEnudJ-XUAEdnOGUojbnn

SÍGUEME ✅ !

** Curso Udemy Bases de datos con MySQL: http://bit.ly/2vtrUg9

** INSTAGRAM: http://instagram.com/uskokrum2010

** FACEBOOK: http://facebook.com/uskokrum2010

** TWITTER: http://twitter.com/uskokrum2010

** SITIO WEB: http://uskokrum2010.com

** GITHUB: http://github.com/UskoKruM

** SUSCRÍBETE: http://youtube.com/uskokrum2010

🔴 ¿Quieres aprender y conversar sobre programación? Únete a nuestro grupo de Telegram ▶ : https://t.me/uskokrum2010_yt

Otros cursos GRATUITOS ✅ :

HTML: http://www.youtube.com/playlist?list=PL_wRgp7nihyZElF-6dkhPU_RetfSp99QN

JAVA: http://www.youtube.com/playlist?list=PL_wRgp7nihyZ6hKPQcioxneVQ1aTuC4fS

SQL SERVER: http://www.youtube.com/playlist?list=PL_wRgp7nihyYXeXZhOiZqKpAdwIRM28Ui

C#: https://www.youtube.com/playlist?list=PL_wRgp7nihyYACu4RyZd0PxJUseQ2tQl8

PHP y MySQL: http://www.youtube.com/playlist?list=PL_wRgp7nihyYXMZ5bBP6v0Q31fRRJLiud

VISUAL BASIC .NET: http://www.youtube.com/playlist?list=PL_wRgp7nihybLjm19HvBxRDp-ZvyGEhdh

JAVASCRIPT: http://www.youtube.com/playlist?list=PL_wRgp7nihyYdnV6ilQcZsfdG5d2nGWkc

NODE.JS: https://www.youtube.com/playlist?list=PL_wRgp7nihybJkFgDxd-LBZgmSIVdy3rd

jQuery: https://www.youtube.com/playlist?list=PL_wRgp7nihyY020gyukDupJEJ84gimiPS

CÓMO EDITAR CON CAMTASIA STUDIO 8: https://www.youtube.com/playlist?list=PL_wRgp7nihyYSbQ7Vbwh5TFbM5nOgriAm

CÓMO USAR ZOOM PARA CLASES VIRTUALES: https://www.youtube.com/playlist?list=PL_wRgp7nihyaNTSqIvKvJtBA-6Qw-UKTU

@Pi_Maaster
7 months ago

esa. como parpadeo el boton cuando dijo deja tu like

@elchabondejorge
7 months ago

Por alguna razón no me aparece el metodo Delete, path y put, le di mil vueltas y nada. Alguno tiene alguna idea?
link imagen: comment image

@Skrollex74
7 months ago

exceleeeeeeeeente video!!
muy recomendado!!

@dev.jc2024
7 months ago

Excelente explicación, tienes algo de Reflex?

@Joco1204
7 months ago

Excelente para los que estamos empezando con DJango, muy concreto, bien explícito y sin rodesos. muchas gracias

@alvarovegaromero1689
7 months ago

te has ganado un sub por ser claro, conciso y explicar todo lo usado para los más novatos en este framework 🙂

@inakisanchez2552
7 months ago

gracias, vine a buscar una solucio que como siempre, era un parentesis en una funcion () :') gracias bro

@mestermester6749
7 months ago

Te felicito, eres un genio explicando.

@urianyviera8839
7 months ago

Gracias profe

@anarkigotic
7 months ago

me encanto

@TheVraska
7 months ago

amigo una consulta, no entiendo como usar esto para un proyecto, o mejor dicho, para poner en mi portfolio, todos los tutoriales parecen incompletos, como puedo hacer para interactuar con esto desde una web? ya directamente cuando accedo a la web no lo toma, hay que elegir docs, api, etc…

@ayrthonuniversidad1193
7 months ago

brother que increible video gracias por ayudar a la gente nueva

@lucasmetrebian5198
7 months ago

Te amo, me solucionaste la vida! JAJAJAJJAA

@christianburns03
7 months ago

La verdad muy bueno, de los mejores videos que encontre explicando este tema. acabo de terminar un curso de python en coderhouse y no se con que seguir, me gustaria q hagas un video ayudando a la gente que esta empezando su camino de programador backend cuales son las cosas basicas que debe saber hacer para empezar. bueno capas q ya lo hiciste es que tenes tantos videos que no los lei todos. abrazo

@jonathanjimenez1302
7 months ago

Y como creo una API rest por medio de request?

@stringmerplis9279
7 months ago

tengo un aplicacion creada con django y creo una api rest puedo conectar esa aplicacion con la api rest seria posible

@ianmellado6945
7 months ago

y ahora eso como puedo enlazarlo a un proyecto para que pueda por ejemplo hacer la toma e ingreso de datos

@wilovy0993
7 months ago

Y como seria para poner imagenes? y formularios validados por Django?

@boasorte6808
7 months ago

A veces documentan las cosas de manera breve intentando que sea mas amigable y simple, pero consiguen un efecto contrario, que sea problemático y poco claro.
Me explico, en la Doc de Django RF en el Quickstart eliminan el panel de administrador, no sé cual es la idea de eso además de complicar las cosas. Mi plan es usar Django RF como backend, pero manteniendo el panel de administraición y en el front usar Vue.
¿Por qué crees que hacen eso? Hare mi primer proyecto con django rest framework, tengo experiencia con flask pero para cosas muy pequeñas tipo comunicar aplicaciones (microservicios) y he jugado con django. Para programar un nuevo proyecto de forma seria ¿Me sugieres desarrollarlo apoyandome solo de la documentación de rest framework?