0% encontró este documento útil (0 votos)
28 vistas4 páginas

Backend Django

El documento proporciona instrucciones paso a paso para configurar una API básica de Django con Django REST Framework. Incluye la instalación de software, creación de un proyecto y aplicación Django, configuración de modelos, vistas y URLs para exponer datos mediante diferentes verbos HTTP.

Cargado por

lita
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como TXT, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
28 vistas4 páginas

Backend Django

El documento proporciona instrucciones paso a paso para configurar una API básica de Django con Django REST Framework. Incluye la instalación de software, creación de un proyecto y aplicación Django, configuración de modelos, vistas y URLs para exponer datos mediante diferentes verbos HTTP.

Cargado por

lita
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como TXT, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 4

0.- Instalar de Visula Studio Code - > https://code.visualstudio.

com/download
1.- Crear y abril Carpeta (CarpetaApi) en Visual Studio Code
2.- Instalar PYTHON https://www.python.org/downloads/
py
>>exit()
py --version
3.-Guia de instalación … (google:instalar django en windows)
https://docs.djangoproject.com/en/4.0/howto/windows/
4.- PIP es un administrador de paquetes para python ya viene con el instalador con
python y para actualizar pip
py -m pip install --upgrade pip
//para ver la lista de paquetes
pip list
//versión
pip --version
--------------------------------------------
5.- instalar pip y crear entorno virtual
pip install virtualenv
py -m venv env
env\Scripts\activate.bat

6.- Instalar DJANGO


py -m pip install Django

—-------------------------
7.- Instalar Django Rest Framework (ya viene con django … asi que no es necesario
instalar djagno)
pip install djangorestframework
—---------------------------------
8.- Instalar conectores para mysql
pip install mysqlclient pymysql
—----------------------------
9.- Crear proyecto con django
django-admin startproject ProyectoApi
—-------------------------------
10.- Crear la aplicación (api) Ingresar primero a la carpeta
CD ProyectoApi
django-admin startapp api
11.- Iniciar el servidor Web
cd ProyectoApi
py manage.py runserver
En el navegador → http://127.0.0.1:8000/
—-------------------------------------------

12.- Modificar el archivo carpetaapi\proyectoapi\ProyectoApi\settings.py


INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'api',
]
……………………………
crear la base de datos en mysql django_api
……………………..
DATABASES = {
'default': {
'ENGINE': 'django.db.backends.mysql',
'HOST': 'localhost',
'PORT':'3306',
'USER':'root',
'PASSWORD':'',
'NAME':'hipermaxi',
'OPTIONS':{
'init_command':"SET sql_mode='STRICT_TRANS_TABLES'"
}
}
}
—----------------------------------------------
13.- Modificar el archivo CarpetaApi\proyectoapi\Api\models.py
from django.db import models
# Create your models here.
class Producto (models.Model):
nombre=models.CharField(max_length=50)
precio = models.PositiveIntegerField()

—-------------------------------------------------------
14.- Modificar el archivo CarpetaApi\proyectoapi\Api\Admin.py
from django.contrib import admin
from .models import Producto
# Register your models here.
admin.site.register(Producto)

-----------------------
crear base de datos en mysql :hipermaxi
-----------------------
en la consola presionar ctrl+c
--------------
15. Migrar a mysql las 10 tablas… que usualmente usa django para sus aplicaciones
(env) C:\Edwin\programas\python\CarpetaApi\ProyectoApi>python manage.py migrate
---------------------
observar la base de datos en mysql ...que tenga 10 tablas...
----------
16.- Crear un super usuario (contraseña minimo 8 digitos)
python manage.py createsuperuser
username: magno
email: ecalizaya@gmail.com
password: hola1234
password: hola1234

16. Migración del modelo (save all)


python manage.py makemigrations

17 otra solo migrar…


python manage.py migrate

17 Hacer correr la aplicación ..


python manage.py runserver
18 Ingresar al navegador(chrome) para probar si funciona la api
http://127.0.0.1:8000/admin
usuario magno
contraseña hola1234
pueden crear ahi mismo varios registros

-------------------------------
19.- (Modificar) Crear los verbos HTTP en el archivo ProyectoApi\Api\views.py
from django.http import JsonResponse
from django.utils.decorators import method_decorator
from django.shortcuts import render
from django.views import View
from django.views.decorators.csrf import csrf_exempt
from .models import Producto
import json
# Create your views here.

class ProductoView(View):
@method_decorator(csrf_exempt)
def dispatch(self, request, *args , **kwargs):
return super().dispatch(request, *args, **kwargs)

def get(self, request, id=0):


if (id>0):
productos=list(Producto.objects.filter(id=id).values())
if len(productos)>0:
producto=productos[0]
datos = {'message': "Success", 'producto': producto}
else:
datos = {'message': "Producto no existe..."}
return JsonResponse(datos)
else:
productos=list(Producto.objects.values())
if len(productos)>0:
datos={'message':"Success",'productos':productos}
else:
datos={'message':"producto no existe..."}
return JsonResponse(datos)

def post(self, request):


jd = json.loads(request.body)
Producto.objects.create(nombre=jd['nombre'], precio=jd['precio'])
datos ={'message':"Success"}
return JsonResponse(datos)

def put(self, request, id):


jd = json.loads(request.body)
productos=list(Producto.objects.filter(id=id).values())
if len(productos)>0:
producto=Producto.objects.get(id=id)
producto.nombre=jd['nombre']
producto.precio=jd['precio']
producto.save()
datos ={'message':"Success"}
else:
datos = {'message': "Producto no existe..."}
return JsonResponse(datos)

def delete(self, request, id):


productos=list(Producto.objects.filter(id=id).values())
if len(productos) > 0:
Producto.objects.filter(id=id).delete()
datos ={'message':"Success"}
else:
datos = {'message': "Producto no existe..."}
return JsonResponse(datos)
20 .- Crear el archivo ProyectoApi\Api\urls.py
from django.urls import path
from .views import ProductoView

urlpatterns=[
path('productos/', ProductoView.as_view(), name='companies_list'),
path('productos/<int:id>', ProductoView.as_view(), name='productos_process')
]

21.- Modificar el archivo ProyectoApi\urls.py


from django.contrib import admin
from django.urls import path, include

urlpatterns = [
path('admin/', admin.site.urls),
path('api/', include('api.urls'))
]

22.- Ingresar al navegador chrome http://127.0.0.1:8000/api/productos/

25.- Crear collecion hipermaxi


GET list_productos —> http://127.0.0.1:8000/api/productos
GET read_producto —> http://127.0.0.1:8000/api/producto/3

POST add_producto —> http://127.0.0.1:8000/api/productos/


{
"nombre": "cuaderno",
"precio": 20
}
PUT update_producto —> http://127.0.0.1:8000/api/productos/
{
"nombre": "Cuadernos",
"precio": 22
}

DELETE delete_producto —> http://127.0.0.1:8000/api/productos/1

También podría gustarte

pFad - Phonifier reborn

Pfad - The Proxy pFad of © 2024 Garber Painting. All rights reserved.

Note: This service is not intended for secure transactions such as banking, social media, email, or purchasing. Use at your own risk. We assume no liability whatsoever for broken pages.


Alternative Proxies:

Alternative Proxy

pFad Proxy

pFad v3 Proxy

pFad v4 Proxy