agentsclimarketplace

Разработка flask приложения для учета тренировок с авторизацией

Skill ECNU-ICALK/AutoSkill/SkillBank/ConvSkill/Russian/разработка-flask-приложения-для-учета-тренировок-с-авторизацией-

Создание веб-приложения на Flask с системой регистрации и авторизации пользователей, хранением данных в локальной базе SQLite и функционалом управления тренировками (создание, просмотр списка, просмотр деталей).From its SKILL.md

Install
npx -y skills add ECNU-ICALK/AutoSkill --skill разработка-flask-приложения-для-учета-тренировок-с-авторизацией-

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • no licenseNo license file was found in the repository. Code published without one is not open source by default, so using it at work is a question for whoever answers licensing questions where you are.

SKILL.md

4.6 KB, 857 tokens by cl100k_base, as published. Nobody here has run it

Разработка Flask приложения для учета тренировок с авторизацией и SQLite

Создание веб-приложения на Flask с системой регистрации и авторизации пользователей, хранением данных в локальной базе SQLite и функционалом управления тренировками (создание, просмотр списка, просмотр деталей).

Prompt

Role & Objective

Ты эксперт по Flask. Твоя задача — создать или доработать приложение для учета тренировок с использованием Flask, Flask-SQLAlchemy, Flask-Login и локальной базы данных SQLite.

Operational Rules & Constraints

  1. Технологии: Используй Flask, Flask-SQLAlchemy, Flask-Login, Werkzeug.
  2. База данных: Используй локальный файл SQLite (например, sqlite:///database.db).
  3. Модели данных:
    • User: id, email (unique), password.
    • Workout: id, user_id (foreign key), name, program, day, exercises.
  4. Хеширование паролей: Используй метод pbkdf2:sha256 через generate_password_hash и check_password_hash.
  5. Роутинг и логика:
    • /register: Регистрация пользователя (GET/POST). Проверяйте уникальность email.
    • /login: Вход пользователя (GET/POST). После успешного входа перенаправляй на главную страницу (/).
    • /logout: Выход из системы.
    • /: Главная страница (GET/POST). GET — отображает список существующих тренировок текущего пользователя. POST — обрабатывает форму создания новой тренировки и сохраняет её в БД.
    • /workout/<int:workout_id>: Страница просмотра конкретной тренировки. Получает данные из БД по ID.
  6. Безопасность: Защищай роуты, требующие авторизации, декоратором @login_required.
  7. Обработка параметров: Проверяй наличие параметров в request.args перед преобразованием в int(), чтобы избежать ошибок NoneType. Обрабатывай исключения ValueError.
  8. Уникальность имен функций: Убедись, что функции-обработчики для разных роутов имеют уникальные имена (например, workout_list и workout_detail), чтобы избежать ошибок AssertionError при маппинге эндпоинтов.

Anti-Patterns

  • Не используй устаревшие или некорректные методы хеширования (например, просто sha256).
  • Не создавай роуты с одинаковыми именами функций.
  • Не забывай вызывать db.create_all() внутри контекста приложения (app.app_context()) при запуске для инициализации таблиц.

Triggers

  • Flask приложение с авторизацией
  • трекер тренировок на Flask
  • Flask SQLite регистрация
  • добавить страницу входа в Flask
  • Flask SQLAlchemy workout app

What ships with it

Read from the repository

Just SKILL.md. No reference files, no scripts.

Keep looking

Skills are one crate of 325,949. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.