Skip to content

MrSkyAngule/bookmarks

Repository files navigation

Django Registration Site

Система регистрации и аутентификации пользователей на Django с поддержкой Google OAuth2.

Возможности

  • ✅ Регистрация пользователей
  • ✅ Аутентификация по email
  • ✅ Google OAuth2 авторизация
  • ✅ Профили пользователей
  • ✅ Админ-панель Django
  • ✅ Адаптивный дизайн

Установка и запуск

1. Клонирование и настройка окружения

# Перейдите в директорию проекта
cd /home/mrskyangul/Загрузки/register_sait

# Активируйте виртуальное окружение
source venv_new/bin/activate

# Установите зависимости (уже установлены)
pip install -r requirements.txt

2. Настройка переменных окружения

Скопируйте файл env_example.txt в .env и заполните необходимые переменные:

cp env_example.txt .env

Отредактируйте .env файл:

# Google OAuth2 credentials
GOOGLE_OAUTH2_KEY=your_google_oauth2_client_id_here
GOOGLE_OAUTH2_SECRET=your_google_oauth2_client_secret_here

# Django settings
SECRET_KEY=django-insecure-_gr@&34g*)gv993aq&q!ccvx90ay(14@)vj5%7d#%cw2g#_s5r
DEBUG=True

3. Настройка Google OAuth2

  1. Перейдите в Google Cloud Console
  2. Создайте новый проект или выберите существующий
  3. Включите Google+ API
  4. Создайте OAuth 2.0 credentials
  5. Добавьте разрешенные URI:
    • http://localhost:8000/complete/google-oauth2/
    • http://127.0.0.1:8000/complete/google-oauth2/
  6. Скопируйте Client ID и Client Secret в файл .env

4. Запуск проекта

# Примените миграции
python manage.py migrate

# Создайте суперпользователя (если нужно)
python manage.py createsuperuser

# Запустите сервер разработки
python manage.py runserver

Проект будет доступен по адресу: http://localhost:8000

Структура проекта

register_sait/
├── account/                 # Приложение для работы с пользователями
│   ├── models.py           # Модели пользователей и профилей
│   ├── views.py            # Представления для регистрации и аутентификации
│   ├── forms.py            # Формы для регистрации
│   ├── authentication.py   # Кастомная аутентификация
│   └── templates/          # Шаблоны
├── bookmarks/              # Основные настройки проекта
│   ├── settings.py         # Настройки Django
│   └── urls.py             # Основные URL маршруты
├── static/                 # Статические файлы (CSS, JS, изображения)
├── media/                  # Загруженные пользователями файлы
├── requirements.txt        # Зависимости Python
└── manage.py              # Управляющий скрипт Django

Основные URL маршруты

  • / - Главная страница
  • /login/ - Вход в систему
  • /logout/ - Выход из системы
  • /register/ - Регистрация
  • /dashboard/ - Личный кабинет
  • /admin/ - Админ-панель
  • /complete/google-oauth2/ - Callback для Google OAuth2

Админ-панель

Доступ к админ-панели: http://localhost:8000/admin/

Логин: admin Пароль: admin123

Разработка

Добавление новых функций

  1. Создайте новое приложение: python manage.py startapp app_name
  2. Добавьте приложение в INSTALLED_APPS в settings.py
  3. Создайте модели, представления и URL маршруты
  4. Примените миграции: python manage.py makemigrations && python manage.py migrate

Отладка

Для отладки используйте:

python manage.py shell

Тестирование

python manage.py test

Развертывание в продакшене

  1. Установите DEBUG = False в settings.py
  2. Настройте базу данных PostgreSQL
  3. Настройте веб-сервер (Nginx + Gunicorn)
  4. Настройте SSL сертификаты
  5. Обновите переменные окружения для продакшена

Технологии

  • Backend: Django 5.2.6
  • Frontend: HTML, CSS, JavaScript
  • База данных: SQLite (разработка), PostgreSQL (продакшен)
  • Аутентификация: Django Auth + Google OAuth2
  • Статические файлы: Django Static Files

Лицензия

MIT License

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors