def init_admin_app(self):
"""
Initialize admin app
"""
admin_views = __import__(
'crm.apps.admin.views',
globals(),
locals(),
['object']
)
adminindexview = getattr(
admin_views,
'MyAdminIndexView')
admin = Admin(
self._app,
name="CRM",
index_view=adminindexview(url='/'),
endpoint='/',
template_mode="bootstrap3", url="/"
)
all_models = {}
for model in BaseModel.__subclasses__():
all_models[model.__name__] = model
with warnings.catch_warnings():
warnings.filterwarnings(
'ignore', 'Fields missing from ruleset', UserWarning)
for main_model in NAV_BAR_ORDER['MAIN']:
viewname = main_model + "ModelView"
viewcls = getattr(admin_views, viewname)
admin.add_view(viewcls(all_models[main_model], db.session))
for extra_model in NAV_BAR_ORDER['EXTRA']:
viewname = extra_model + "ModelView"
viewcls = getattr(admin_views, viewname)
admin.add_view(
viewcls(all_models[extra_model], db.session, category="Extra"))
评论列表
文章目录