На нашем сайте Вы сможете найти готовые курсовые и дипломные работы по программированию
Сейчас работаем

Магазин. Учет товаров (Python, Flask, Bootstrap, html, css, SQLite)

Скриншот архива с проектом

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

Задание

Разработать простое Flask-приложение, которое будет позволять пользователю вести учет товаров. Это должно быть простое одностраничное приложение с возможностью добавлять, изменять и удалять товары. в качестве БД используйте SQLite. 

Функционал программы

  • добавление товаров
  • вывод детальной информации о товаре
  • Сизменение товара
  • удаление товара

Фрагмент программного кода

from flask import Flask, render_template, request, url_for, redirect 
from flask_bootstrap import Bootstrap
from flask_sqlalchemy import SQLAlchemy
from flask_wtf import FlaskForm
from wtforms import StringField, TextAreaField, IntegerField, DateField, DecimalField
from wtforms.validators import DataRequired
from datetime import datetime

app = Flask(__name__)
bootstrap = Bootstrap(app)
app.config['SQLALCHEMY_DATABASE_URI'] = 'sqlite:///products.db'
app.config['SECRET_KEY'] = 'your_secret_key_here'
db = SQLAlchemy(app)


class Product(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(100), nullable=False)
    description = db.Column(db.Text, nullable=False)
    quantity = db.Column(db.Integer, nullable=False)
    date_receipt = db.Column(db.DateTime, nullable=False, default=datetime.utcnow)
    price = db.Column(db.Float, nullable=False)

class ProductForm(FlaskForm):
    name = StringField('Name', validators=[DataRequired()])
    description = TextAreaField('Description', validators=[DataRequired()])
    quantity = IntegerField('Quantity', validators=[DataRequired()])
    date_receipt = DateField('Date Receipt', validators=[DataRequired()])
    price = DecimalField('Price', validators=[DataRequired()])


@app.route('/', methods=['POST', 'GET'])
def index():
    form = ProductForm()

    if form.validate_on_submit():
        name = form.name.data
        description = form.description.data
        quantity = form.quantity.data
        date_receipt = form.date_receipt.data
        price = form.price.data

        product = Product(name=name, description=description, 
                          quantity=quantity, date_receipt=date_receipt, price=price)
        db.session.add(product)
        db.session.commit()
        return redirect(url_for('index'))

    products = Product.query.all()
    return render_template('index.html', form=form, products=products)


@app.route('/products/<int:id>')
def product_detail(id):
    product =Product.query.get(id)   
    return render_template("product_detail.html", product=product)


@app.route('/products/<int:id>/delete')
def product_delete(id):
    product = Product.query.get_or_404(id)

    try:
        db.session.delete(product)
        db.session.commit()
        return redirect(url_for('index'))
    except:
        return "При удалении товара произошла ошибка!!!"


@app.route('/products/<int:id>/update', methods=['POST', 'GET'])
def product_update(id):    
    product = Product.query.get(id)
    form = ProductForm(obj=product)
    if request.method == 'POST':
        product.name = request.form['name']
        product.description = request.form['description']
        product.quantity = request.form['quantity']
        product.date_receipt = datetime.strptime(request.form['date_receipt'], '%Y-%m-%d')
        product.price = request.form['price']
        try:            
            db.session.commit()
            return redirect(url_for('index'))
        except Exception as e:
           return f"При изменении товара произошла ошибка: {str(e)}"
    else:
        
        return render_template("product_update.html", product=product, form=form)



if __name__ == '__main__':
    with app.app_context():
        db.create_all() 
    app.run(debug=True)

Пояснения по запуску программы

Приветствую! За раннее выражаю благодарность за покупку работы и подписку на мой YouTube-канал - https://www.youtube.com/channel/UC3XXxvCFq5i4laCmPE2zI9w

Для эффективной работы с приложением вам потребуется: 

  •  редактор кода VS Code - скачать можно тут - https://code.visualstudio.com/download 
  • интерпретатор языка Python, скачать можно тут - https://www.python.org/downloads/ Однако скачивать версию 3.12 не советую, есть проблемы с установкой библиотек. Рнкомендуемая версия - 3.11.7. 
  • После установки всего выше описанного, настройте VS Code  для работы с Python установив необходимые расширения (см. инструкцию - https://youtu.be/j5e5gwZgMH8) .
  • Запускаете приложение и пользуетесь. Также вы можете самостоятельно выложить проект на Heroku. 

Купить 1000,00 
Сразу после оплаты Вы сможете скачать работу и мы вышлем дополнительно файл с работой на электронную почту. Исходник программ Вы сможете отредактировать, как Вам нужно.
Комментарии (0)

/ /

Оставить комментарий

Ты не можешь комментировать

Только зарегистрированые пользователи имеют возможность комментировать работы
Купить

1000,00 

Покупается впервые!
Сразу после оплаты Вы сможете скачать работу и мы вышлем дополнительно файл с работой на электронную почту. Исходник программ Вы сможете отредактировать, как Вам нужно.

Заказать через

Учет товаров.rar
32898408
Оцени работу

рейтинг

Магазин. Учет товаров (Python, Flask, Bootstrap, html, css, SQLite)
Flask проект Учет товаров - это приложение для учета товаров. Приложение написано на Python Flask. Приложение довольно простое, с минимальным функционалом.
Категория: Образование
Стоимость: 1000,00