Coder Social home page Coder Social logo

app-blog-dg's Introduction

Lets Do it Now

API RESTful para una plataforma de blog con funcionalidades avanzadas utilizando Django REST Framework y Python como lenguaje de programación principal.

Acerca del proyecto

La plataforma de blog consta de varias entidades: Usuarios, Perfiles, Entradas (Posts), Comentarios y Likes. Los Usuarios pueden tener roles de administrador, editor o blogger. Los Usuarios tienen un Perfil asociado con información adicional como la biografía y la imagen de perfil. Las Entradas están asociadas a un Usuario (el autor) e incluyen un título, contenido, fecha de publicación, categoría y una lista de etiquetas (tags). Los Comentarios están vinculados a un Usuario (la persona que comenta) y a una Entrada, e incluyen el texto del comentario. Los Usuarios pueden dar Like tanto a Entradas como a Comentarios.

Requisitos del proyecto:

  1. Modelado de Datos: Diseña e implementa modelos de datos para Usuario, Perfil, Entrada, Comentario y Like.
  2. Autenticación y Autorización: Implementa un sistema de autenticación y autorización que permita a los administradores gestionar todos los recursos, a los editores gestionar Entradas, Comentarios y Likes, y a los bloggers crear y gestionar sus propias Entradas, Comentarios y Likes.
  3. API Endpoints: Implementa los siguientes endpoints: ● CRUD de Usuarios y Perfiles ● CRUD de Entradas ● CRUD de Comentarios ● CRUD de Likes
  4. Serialización: Emplea los serializadores de Django REST para manejar la conversión entre modelos y JSON.
  5. Filtros y Paginación: Implementa filtros que permitan buscar entradas por título, autor, categoría y etiquetas. Además, implementa la paginación en los endpoints que devuelven múltiples recursos.
  6. Pruebas: Desarrolla pruebas unitarias y de integración para los modelos, la autenticación, la autorización y los endpoints de la API. Asegúrate de cubrir tanto los casos de éxito como los de error.
  7. Documentación: Documenta todos los endpoints de la API utilizando Django REST Swagger o similar.

Construido con

  • Lenguaje: Python 3.10.5
  • Framework: Django REST Framework
  • Base de dato: sqlite3

Iniciando

Este es un ejemplo de como deberian instalar el proyecto localmente dada las instruciones.

Intalacion

  1. Instalar virtualEnv e instalarlo
$ virtualenv -p python3 venv
$ source venv/bin/activate
  1. Instalar requirements.txt
$ pip3 install -r requirements.txt

Base de datos

  1. Las migraciones encarga de crear nuevas migraciones en función de los cambios que haya realizado en sus modelos
$ python manage.py makemigrations
  1. Encargado de aplicar y desaplicar migraciones.
$ python manage.py migrate

Correr la api

  1. Inicio del servidor
$ python manage.py runserver

Documentacion de la API

La documentacion esta hecha cumpliendo los estadares de OpenAPI con ayuda del Django y Usage.

La ruta de la documentacion se encuentra disponible en http://localhost:8000/docs

app-blog-dg's People

Contributors

daggeralmanza avatar juanb3r avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.