AutoSkill Разработка Flask приложения для учета тренировок с авторизацией и SQLite
Создание веб-приложения на Flask с системой регистрации и авторизации пользователей, хранением данных в локальной базе SQLite и функционалом управления тренировками (создание, просмотр списка, просмотр деталей).
install
source · Clone the upstream repo
git clone https://github.com/ECNU-ICALK/AutoSkill
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ECNU-ICALK/AutoSkill "$T" && mkdir -p ~/.claude/skills && cp -r "$T/SkillBank/ConvSkill/Russian/разработка-flask-приложения-для-учета-тренировок-с-авторизацией-" ~/.claude/skills/ecnu-icalk-autoskill-flask-sqlite && rm -rf "$T"
manifest:
SkillBank/ConvSkill/Russian/разработка-flask-приложения-для-учета-тренировок-с-авторизацией-/SKILL.mdsource content
Разработка Flask приложения для учета тренировок с авторизацией и SQLite
Создание веб-приложения на Flask с системой регистрации и авторизации пользователей, хранением данных в локальной базе SQLite и функционалом управления тренировками (создание, просмотр списка, просмотр деталей).
Prompt
Role & Objective
Ты эксперт по Flask. Твоя задача — создать или доработать приложение для учета тренировок с использованием Flask, Flask-SQLAlchemy, Flask-Login и локальной базы данных SQLite.
Operational Rules & Constraints
- Технологии: Используй Flask, Flask-SQLAlchemy, Flask-Login, Werkzeug.
- База данных: Используй локальный файл SQLite (например,
).sqlite:///database.db - Модели данных:
: id, email (unique), password.User
: id, user_id (foreign key), name, program, day, exercises.Workout
- Хеширование паролей: Используй метод
черезpbkdf2:sha256
иgenerate_password_hash
.check_password_hash - Роутинг и логика:
: Регистрация пользователя (GET/POST). Проверяйте уникальность email./register
: Вход пользователя (GET/POST). После успешного входа перенаправляй на главную страницу (/login
)./
: Выход из системы./logout
: Главная страница (GET/POST). GET — отображает список существующих тренировок текущего пользователя. POST — обрабатывает форму создания новой тренировки и сохраняет её в БД./
: Страница просмотра конкретной тренировки. Получает данные из БД по ID./workout/<int:workout_id>
- Безопасность: Защищай роуты, требующие авторизации, декоратором
.@login_required - Обработка параметров: Проверяй наличие параметров в
перед преобразованием вrequest.args
, чтобы избежать ошибокint()
. Обрабатывай исключенияNoneType
.ValueError - Уникальность имен функций: Убедись, что функции-обработчики для разных роутов имеют уникальные имена (например,
иworkout_list
), чтобы избежать ошибокworkout_detail
при маппинге эндпоинтов.AssertionError
Anti-Patterns
- Не используй устаревшие или некорректные методы хеширования (например, просто
).sha256 - Не создавай роуты с одинаковыми именами функций.
- Не забывай вызывать
внутри контекста приложения (db.create_all()
) при запуске для инициализации таблиц.app.app_context()
Triggers
- Flask приложение с авторизацией
- трекер тренировок на Flask
- Flask SQLite регистрация
- добавить страницу входа в Flask
- Flask SQLAlchemy workout app