Pre-loader


Flask-admin

Flask-Admin - це розширення для Flask, яке дозволяє створювати адміністративні панелі для роботи з базами даних, включаючи SQLAlchemy. Нижче наведено приклад використання Flask-Admin для роботи з DBGrid та SQLAlchemy.

Спочатку встановіть Flask-Admin:

pip install flask-admin

Припустимо, у вас є наступні моделі SQLAlchemy:

from flask_sqlalchemy import SQLAlchemy

db = SQLAlchemy()

class Author(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    name = db.Column(db.String(50), nullable=False)
    books = db.relationship(`Book`, backref=`author`, lazy=True)

class Book(db.Model):
    id = db.Column(db.Integer, primary_key=True)
    title = db.Column(db.String(100), nullable=False)
    author_id = db.Column(db.Integer, db.ForeignKey(`author.id`), nullable=False)

Тепер ви можете створити адміністративний інтерфейс за допомогою Flask-Admin:

from flask import Flask
from flask_admin import Admin
from flask_admin.contrib.sqla import ModelView

app = Flask(__name__)
app.config[`SQLALCHEMY_DATABASE_URI`] = `sqlite:///example.db`
app.config[`SECRET_KEY`] = `supersecretkey`
db.init_app(app)

admin = Admin(app, name=`My App`, template_mode=`bootstrap3`)
admin.add_view(ModelView(Author, db.session))
admin.add_view(ModelView(Book, db.session))

if __name__ == "__main__":
    app.run()

Цей приклад показує, як створити простий адміністративний інтерфейс з Flask-Admin для роботи з моделями SQLAlchemy. Flask-Admin автоматично генерує форми для редагування та відображення даних на основі ваших моделей.

Тепер, коли запустите ваш додаток, ви зможете відкрити адміністративний інтерфейс у своєму браузері за адресою http://localhost:5000/admin/.

Зверніть увагу, що Flask-Admin може бути налаштований для виконання різних операцій та редагування атрибутів моделі. Додаткову інформацію та приклади можна знайти в офіційній документації Flask-Admin: https://flask-admin.readthedocs.io/en/latest/