Конвертер валют
Чи траплялося вам задумуватися над перерахунком валют, плануючи подорож або здійснюючи міжнародну покупку? Не біда! Сьогодні ми створимо елегантний, реальний конвертер валют за допомогою Django та API обміну валют. В кінці цього уроку у вас буде потужний інструмент, який зможе конвертувати валюти швидше, ніж ви скажете «обмінний курс»!
Налаштування вашого Django проекту
Давайте почнемо з налаштування нашого Django проекту. Виконайте наступні кроки, щоб створити надійну основу для нашого конвертера валют:
- Створіть нову директорію для вашого проекту:
mkdir currency_converter
cd currency_converter
- Налаштуйте віртуальне середовище:
python -m venv env
Це створює ізольоване середовище Python для нашого проекту, що дозволяє зберігати залежності чистими і зручними для управління.
- Активуйте віртуальне середовище:
source env/bin/activate # На Windows: env\Scripts\activate
Ви побачите (env) на початку вашого командного запиту, що вказує на активоване середовище.
- Встановіть Django:
pip install django
Це встановить останню версію Django у ваше віртуальне середовище.
- Створіть новий Django проект:
django-admin startproject currencyproject .
- Створіть новий Django додаток:
python manage.py startapp converter
- Додайте новий додаток до налаштувань проекту:
Відкрийте файлcurrencyproject/settings.py
і додайте 'converter' до списку INSTALLED_APPS:
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'converter', # Додайте цей рядок
]
Створення конвертера валют
Тепер, коли наш проект налаштовано, давайте створимо конвертер валют:
- У файлі
converter/views.py
додайте наступний код:
Використання ExchangeRate-API
import requests
from django.shortcuts import render
def convert_currency(request):
if request.method == 'POST':
amount = float(request.POST['amount'])
from_currency = request.POST['from_currency']
to_currency = request.POST['to_currency']
url = f"https://api.exchangerate-api.com/v4/latest/{from_currency}"
response = requests.get(url)
data = response.json()
rate = data['rates'][to_currency]
converted_amount = amount * rate
return render(request, 'converter/result.html', {
'amount': amount,
'from_currency': from_currency,
'to_currency': to_currency,
'converted_amount': round(converted_amount, 2)
})
return render(request, 'converter/convert.html')
Створіть HTML шаблони в `converter/templates/converter/`:
`convert.html`:
Конвертер валют
{% csrf_token %} Сума: Валюта відправлення: Американський долар Євро Британський фунт Японська єна Валюта отримання: Американський долар Євро Британський фунт Японська єна Конвертувати ```
result.html
:
Результат конвертації
{{ amount }} {{ from_currency }} дорівнює
{{ converted_amount }} {{ to_currency }}
Конвертувати іншу суму ```
3. Налаштуйте маршрутизацію URL: В `currencyproject/urls.py`:
from django.contrib import admin
from django.urls import path, include
urlpatterns = [
path('admin/', admin.site.urls),
path('', include('converter.urls')),
]
```
Створіть converter/urls.py
:
from django.urls import path
from . import views
urlpatterns = [
path('', views.convert_currency, name='convert'),
]
- Виконайте міграції та запустіть сервер розробки:
python manage.py migrate
python manage.py runserver
Вітаємо! Ви щойно створили реальний конвертер валют за допомогою Django. Цей проект демонструє, як інтегрувати зовнішні API, обробляти форми та створювати практичний веб-додаток.
Наступні кроки
Готові підняти ваш конвертер валют на новий рівень? Ось кілька ідей:
- Додайте більше валют у список вибору
- Реалізуйте кешування, щоб зменшити кількість запитів до API
- Створіть стильний, адаптивний дизайн, використовуючи CSS-фреймворки
Пам'ятайте, світ веб-розробки величезний та захоплюючий.
Продовжуйте досліджувати, продовжуйте кодувати, і найголовніше, продовжуйте конвертувати валюти!
Демонстрація конвертера валют
Щасливого кодування, і нехай ваші курси валют завжди будуть на вашу користь!
Отримайте повний код за посиланням https://github.com/Mathurdanduprolu/Day3-CurrencyConverter.git
- Слідкуйте за мною на Medium для більше підручників з Django та веб-розробки.
- Поділіться своїм досвідом та відгуками в коментарях — я з нетерпінням чекаю ваші думки!
- Не забудьте поставити лайк та поділитися цією статтею з вашою мережею.
Давайте продовжувати створювати неймовірні додатки разом! 🚀
Перекладено з: Day 3: Building a Real-Time Currency Converter with Django