Ejemplo n.º 1
0
from flask_admin import Admin, expose
from flask_admin.base import AdminIndexView
from flask_admin.contrib import sqla
from flask_simplelogin import login_required
from flask_admin.model import typefmt
from datetime import datetime

from flaskblueprint.ext.database import db
from flaskblueprint.models import User

AdminIndexView._handle_view = login_required(AdminIndexView._handle_view)
sqla.ModelView._handle_view = login_required(sqla.ModelView._handle_view)


class AdminView(sqla.ModelView):
    def __init__(self, *args, **kwargs):
        super(AdminView, self).__init__(*args, **kwargs)

        self.column_formatters = dict(typefmt.BASE_FORMATTERS)
        self.column_formatters.update({
            type(None): typefmt.null_formatter,
            datetime: self.date_format
        })

        self.column_type_formatters = self.column_formatters

    def date_format(self, view, value):
        return value.strftime("%d %b %Y - %I:%M:%p")


class HomeView(AdminIndexView):
Ejemplo n.º 2
0
from flask_admin import Admin
from flask_admin.base import AdminIndexView  # noqa
from flask_admin.contrib.pymongo import ModelView  # noqa

from flask_simplelogin import login_required

# decorate Flask-Admin view via Monkey Patching
AdminIndexView._handle_view = login_required(AdminIndexView._handle_view)
ModelView._handle_view = login_required(ModelView._handle_view)


def configure(app):
    """Adds admin extension to app"""
    app.admin = Admin(app, "TalkShow", template_mode="bootstrap2")