agentsclimarketplace

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

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

AutoSkill: Experience-Driven Lifelong Learning via Skill Self-Evolution

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.

What its author says it does

Copied from the file, not written here

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

SKILL.md

4.6 KB, 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

Keep looking

Skills are one crate of 328,083. 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.