40 lines
2.6 KiB
Markdown
40 lines
2.6 KiB
Markdown
REST API для учёта растений и теплиц ботанического сада. Реализовано на Django + Django REST Framework с использованием PostgreSQL в качестве базы данных.
|
||
|
||
Система хранит данные о:
|
||
- **Теплицах (Greenhouse)** — название, локация, климатическая зона.
|
||
- **Растениях (Plant)** — вид, семейство, теплица, высота, частота полива, статус цветения, дата посадки, страна происхождения, статус исчезающего вида.
|
||
|
||
## API docs (больше на /api/schema/swagger-ui)
|
||
|
||
| Метод | URL | Описание |
|
||
|------------------------|------------------------------------------------|-------------------------------------------------|
|
||
| GET | `/api_v1/plants/{id}/` | Получить одно растение |
|
||
| GET | `/api_v1/plants/?greenhouse=1&is_flowering=true` | Получить группу растений с фильтрами |
|
||
| POST | `/api_v1/plants/` | Создать одно растение |
|
||
| POST | `/api_v1/plants/bulk-create/` | Создать группу растений |
|
||
| PATCH | `/api_v1/plants/{id}/` | Обновить одно растение |
|
||
| PATCH | `/api_v1/plants/bulk-update/` | Обновить группу растений по списку id |
|
||
| DELETE | `/api_v1/plants/{id}/` | Удалить одно растение |
|
||
| DELETE | `/api_v1/plants/bulk-delete/?family=...` | Удалить группу растений по фильтру |
|
||
| GET/POST/PATCH/DELETE | `/api_v1/greenhouses/{id}/` | CRUD по теплицам |
|
||
|
||
### 1. clone
|
||
|
||
```bash
|
||
git clone <your-repo-url>
|
||
cd botanical-garden-api
|
||
```
|
||
|
||
### 2. .venv
|
||
|
||
```bash
|
||
python -m venv .venv
|
||
source .venv/bin/activate # Linux/macOS
|
||
.venv\Scripts\activate # Windows
|
||
```
|
||
|
||
### 3. dependencies
|
||
|
||
```bash
|
||
pip install -r requirements.txt
|
||
```
|