Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/tetherone/avito

Django + DRF, site for selling goods, like Avito
https://github.com/tetherone/avito

Last synced: about 2 months ago
JSON representation

Django + DRF, site for selling goods, like Avito

Awesome Lists containing this project

README

        

[![Python 3.6](https://img.shields.io/badge/python-3.11-green.svg)](https://www.python.org/downloads/release/python-360/)
![Django 3.0](https://img.shields.io/badge/Django-4.2.7-green.svg)

# Описание функионала проекта

## 1. Главная страница

Поле поиска по объявлениям
Список объявлений, включая главную фотографию, название,
цену, адрес, никнейм пользователя и ссылку "подробнее".
По нажатию на ссылку "подробнее" открывается дополнительная
информация об объявлении (дата создания,
дополнительные фотографии, номер телефона продавца).
Возможность просмотра профиля пользователя со списком его объявлений
(редактирование или удаление чужих объявлений недоступно).

## 2. Создание и редактирование объявлений

Форма заполняется полями: название, описание, цена,
адрес, номер телефона, фото.
Реализована возможность редактирования объявлений
(изменение любых полей, добавление или изменение фотографий).
Редактировать или удалять чужие объявления нельзя

## 3. Взаимодействие с профилем пользователя

При нажатии кнопки "Выйти" пользователь разлогинивается
и остается на главной странице.
При нажатии кнопки "Ваш профиль" пользователь переходит
на свой профиль, где может просматривать и редактировать свои объявления.
Пользователь может просматривать чужие профили и видеть их объявления

## 4. Регистрация и аутентификация

При регистрации вводится никнейм и пароль (два раза).
При входе в аккаунт вводится пароль и никнейм.


# Техническая информация

- Фреймворк: Django + DRF
- База данных: SQLite
- Кеширование: Redis
- Деплой проекта: Nginx + Gunicorn

# Запуск проекта

## 1. Клонируйте репозиторий
```
git clone https://github.com/TetherOne/avito
```
## 2. Установите зависимости
```
pip install -r requirements.txt
```
## 3. Примените миграции
```
python manage.py migrate
```
## 4. Запустите redis
```
redis-server
```
## 5. Запустите проект
```
python manage.py runserver
```