diff --git a/app/admin/views.py b/app/admin/views.py index 6bef8bed95a36ee995fefca413872722d64377ef..4473d118861a9d39734d862bddc32c7456f10709 100644 --- a/app/admin/views.py +++ b/app/admin/views.py @@ -13,7 +13,7 @@ from wtforms import validators, fields from flask_admin.contrib import sqla from flask_admin.model.form import converts from flask_login import current_user -from ..models import Item, User, Group, ICS_ID_RE +from ..models import ICS_ID_RE # Add custom model converter for CIText type @@ -37,18 +37,12 @@ class GroupAdmin(AdminModelView): can_edit = False can_delete = False - def __init__(self, session): - super().__init__(Group, session) - class UserAdmin(AdminModelView): can_create = False can_edit = False can_delete = False - def __init__(self, session): - super().__init__(User, session) - class QRCodeAdmin(AdminModelView): @@ -66,6 +60,3 @@ class ItemAdmin(AdminModelView): 'validators': [validators.Regexp(ICS_ID_RE, message='ICS id shall match [A-Z]{3}[0-9]{3}')] } } - - def __init__(self, session): - super().__init__(Item, session) diff --git a/app/factory.py b/app/factory.py index a3b9b36968200b9ced4d4a7274881862582d9479..fde52fc81da6e71cd0cf95231c88fc528c86b3a9 100644 --- a/app/factory.py +++ b/app/factory.py @@ -12,9 +12,8 @@ Create the WSGI application. import sqlalchemy as sa from flask import Flask from whitenoise import WhiteNoise -from . import settings +from . import settings, models from .extensions import db, migrate, login_manager, ldap_manager, bootstrap, admin, mail, jwt, toolbar -from .models import Action, Manufacturer, Model, Location, Status, Network, Host, Mac from .admin.views import AdminModelView, ItemAdmin, UserAdmin, GroupAdmin, QRCodeAdmin from .main.views import bp as main from .users.views import bp as users @@ -93,17 +92,17 @@ def create_app(config=None): toolbar.init_app(app) admin.init_app(app) - admin.add_view(GroupAdmin(db.session)) - admin.add_view(UserAdmin(db.session)) - admin.add_view(QRCodeAdmin(Action, db.session)) - admin.add_view(QRCodeAdmin(Manufacturer, db.session)) - admin.add_view(QRCodeAdmin(Model, db.session)) - admin.add_view(QRCodeAdmin(Location, db.session)) - admin.add_view(QRCodeAdmin(Status, db.session)) - admin.add_view(ItemAdmin(db.session)) - admin.add_view(AdminModelView(Network, db.session)) - admin.add_view(AdminModelView(Host, db.session)) - admin.add_view(AdminModelView(Mac, db.session)) + admin.add_view(GroupAdmin(models.Group, db.session)) + admin.add_view(UserAdmin(models.User, db.session)) + admin.add_view(QRCodeAdmin(models.Action, db.session)) + admin.add_view(QRCodeAdmin(models.Manufacturer, db.session)) + admin.add_view(QRCodeAdmin(models.Model, db.session)) + admin.add_view(QRCodeAdmin(models.Location, db.session)) + admin.add_view(QRCodeAdmin(models.Status, db.session)) + admin.add_view(ItemAdmin(models.Item, db.session)) + admin.add_view(AdminModelView(models.Network, db.session)) + admin.add_view(AdminModelView(models.Host, db.session)) + admin.add_view(AdminModelView(models.Mac, db.session)) app.register_blueprint(main) app.register_blueprint(users)