A very simple boarding app with DRF

Overview

CRUD project with DRF

A very simple boarding app with DRF.


About The Project

유저 정보를 갖고 게시판을 다루는 프로젝트 입니다.

Version

  • Python: 3.9
  • DB: PostgreSQL 13
  • Django: 3.2.8

Built With

Getting Started

Prerequisites

Runserver with command line

$ pip install poetry
$ poetry install
$ export DJANGO_SECRET_KEY=49xq#g3=$7e
$ export DATABASE_URL=postgres://localuser:[email protected]:5432/crud
$ docker-compose up postgres
$ poetry run python manage.py runserver

Runserver with Docker

$ docker-compose up

Authentication

Using JWT

Authorization: Bearer 9944b09199c62b...e4b

Usage

Start the dev server for local development:

$ docker-compose up

API Document

http://localhost:8001/

Endpoints

Post API

Retreive

$ curl http://localhost:8000/api/v1/posts/?limit=3&offset=0

{
    "count": 5,
    "next": "http://localhost:8000/api/v1/posts/?limit=3&offset=3",
    "previous": null,
    "results": [
        {
            "id": 8,
            "author": {
                "username": "guest2",
                "email": "[email protected]"
            },
            "title": "red title",
            "content": "apple",
            "created_at": "2021-10-26T15:42:25+0000"
        },
        {
            "id": 7,
            "author": {
                "username": "guest2",
                "email": "[email protected]"
            },
            "title": "blue title",
            "content": "this is sky",
            "created_at": "2021-10-26T15:41:46+0000"
        },
        {
            "id": 6,
            "author": {
                "username": "guest2",
                "email": "[email protected]"
            },
            "title": "sample title 3 edited",
            "content": "interesting3  wow",
            "created_at": "2021-10-26T13:50:51+0000"
        }
    ]
}

List

$ curl http://localhost:8000/api/v1/posts/2/

{
    "id": 2,
    "author": {
        "username": "guest1",
        "email": "[email protected]"
    },
    "title": "sample title 2",
    "content": "interesting2",
    "created_at": "2021-10-26T13:29:13+0000"
}

Delete

$ curl -X DELETE http://localhost:8000/api/v1/posts/2/ -H "Authorization: Bearer eajsdfj...asfdasd"

Update

$ curl -X PATCH http://localhost:8000/api/v1/posts/2/ -d '{"content": "edit"}' -H "Authorization: Bearer eajsdfj...asfdasd"

{
    "title": "sample title 2",
    "content": "edit"
}

Create

$ curl -X POST http://localhost:8000/api/v1/posts/ -d '{"title":"title", "content": "content"}' -H "Authorization: Bearer eajsdfj...asfdasd"

{
    "title": "title",
    "content": "content"
}

Roadmap

  • CI/CD
  • deploy.
  • Unit tests and coverage.
  • Front page to see how it workds.

License

Distributed under the MIT License. See LICENSE for more information.

A supercharged version of paperless: scan, index and archive all your physical documents

Paperless-ng Paperless (click me) is an application by Daniel Quinn and contributors that indexes your scanned documents and allows you to easily sear

Jonas Winkler 5.3k Jan 09, 2023
MobaXterm-GenKey

MobaXterm-GenKey 你懂的!! 本地启动 需要安装Python3!!!

malaohu 328 Dec 29, 2022
Pyjiting is a experimental Python-JIT compiler, which is the product of my undergraduate thesis

Pyjiting is a experimental Python-JIT compiler, which is the product of my undergraduate thesis. The goal is to implement a light-weight miniature general-purpose Python JIT compiler.

Lance.Moe 10 Apr 17, 2022
Cross-platform MachO/ObjC Static binary analysis tool & library. class-dump + otool + lipo + more

ktool Static Mach-O binary metadata analysis tool / information dumper pip3 install k2l Development is currently taking place on the @python3.10 branc

Kritanta 301 Dec 28, 2022
Objetivo: de forma colaborativa pasar de nodos de Dynamo a Python.

ITTI_Ed01_De-nodos-a-python ITTI. EXPERT TRAINING EN AUTOMATIZACIÓN DE PROCESOS BIM: OFFICIAL DE AUTODESK. Edición 1 Enlace al Master Enunciado: Traba

1 Jun 06, 2022
script to analyze EQ decay using python

pyq_decay script to analyze EQ decay using python PyQ Decay ver 1.0 A pythonic script to analyze EQ aftershock decay using method of Omori (1894), Mog

1 Nov 04, 2021
GNU/Linux'u yeni kurulumu bitirmiş olarak açtığınızda sizi karşılayacak bir uygulama.

Hoş Geldiniz GNU/Linux'u yeni kurulumu bitirmiş olarak açtığınızda sizi karşılayacak bir uygulama.

Alperen İsa 96 Oct 30, 2022
Basic Clojure REPL for Sublime Text

Basic Clojure REPL for Sublime Text Goals: Decomplected: just REPL, nothing more Zero dependencies: works directly with pREPL Compact: Display code ev

Nikita Prokopov 23 Dec 24, 2021
MuMMI Core is the underlying infrastructure and generalizable component of the MuMMI framework

MuMMI Core is the underlying infrastructure and generalizable component of the MuMMI framework, which facilitates the coordination of massively parallel multiscale simulations.

4 Aug 17, 2022
Herramienta para pentesting web.

iTell 🕴 ¡Tool con herramientas para pentesting web! Metodos ❣ DDoS Attacks Recon Active Recon (Vulns) Extras (Bypass CF, FTP && SSH Bruter) Respons

1 Jul 28, 2022
Automatically unpin old messages so you can always pin more!

PinRotate Automatically unpin old messages so you can always pin more! Installation You will need to install poetry to run this bot locally for develo

3 Sep 18, 2022
Localization and multifractal properties of the long-range Kitaev chain in the presence of an Aubry-André-Harper modulation

This repository contains the code for the paper Localization and multifractal properties of the long-range Kitaev chain in the presence of an Aubry-André-Harper modulation.

Joana Fraxanet 2 Apr 17, 2022
Flow control is the order in which statements or blocks of code are executed at runtime based on a condition. Learn Conditional statements, Iterative statements, and Transfer statements

03_Python_Flow_Control Introduction 👋 The control flow statements are an essential part of the Python programming language. A control flow statement

Milaan Parmar / Милан пармар / _米兰 帕尔马 209 Oct 31, 2022
System Design Assignments as part of Arpit's System Design Masterclass

System Design Assignments The repository contains a set of problem statements around Software Architecture and System Design as conducted by Arpit's S

Relog 1.1k Jan 09, 2023
A simple but flexible plugin system for Python.

PluginBase PluginBase is a module for Python that enables the development of flexible plugin systems in Python. Step 1: from pluginbase import PluginB

Armin Ronacher 1k Dec 16, 2022
Dump Data from FTDI Serial Port to Binary File on MacOS

Dump Data from FTDI Serial Port to Binary File on MacOS

pandy song 1 Nov 24, 2021
No more support server flooding with questions about unsupported hosting.

No more support server flooding with questions about unsupported hosting.

3 Aug 09, 2021
A tool for study using pomodoro methodology, while study mode spotify or any other .exe app is opened and while resting is closed.

Pomodoro-Timer-With-Spotify-Connection A tool for study using pomodoro methodology, while study mode spotify or any other .exe app is opened and while

2 Oct 23, 2022
GUI tool to manage the contents of chests in Botw

Botw chest manager is a small gui tool allowing to easily manage chests. Sometimes Ice Spear can be very time consuming when adding a simple chest. The purpose of this light tool is to add a new ches

3 Aug 25, 2022
This repository contains a lot of short scripting programs implemented both in Python (Flask) and TypeScript (NodeJS).

fast-scripts This repository contains a lot of short scripting programs implemented both in Python (Flask) and TypeScript (NodeJS). In python These wi

Nahum Maurice 3 Dec 10, 2022