from flask import Flask, Blueprint, flash, request, redirect, url_for, current_app, render_template, jsonify from files.auth import admin_required from files.models import Category, db bp = Blueprint('categories', __name__, url_prefix='/categories') @bp.route('/') def index(): categories = Category.query.all() return render_template('categories/index.html', categories=categories) @bp.route('/create', methods=['GET', 'POST']) @admin_required def create(): if request.method == 'POST': name = request.form['name'] error = None if not name: error = "Name is required" if error is not None: flash(error) else: c = Category(name) db.session.add(c) db.session.commit() return redirect(url_for('categories.index')) return render_template('categories/create.html') @bp.route('') def view(id): category = Category.query.get(id) files = category.files return render_template('categories/view.html', category=category, files=files) @bp.route('//update') @admin_required def update(): pass @bp.route('//delete') @admin_required def delete(): pass