Форум сайта python.su
Всем привет!
Прошу прощения за глупый вопрос - никак не могу нагуглить…
Учу фласк. Есть учебный проект по следам http://habrahabr.ru/post/193242/
Вот решил прикрутить админку, но хочу при этом вынести ее в отдельный файл
В __init__.py добавил
# -*- coding: utf-8 -*- import os from flask import Flask from flask.ext.sqlalchemy import SQLAlchemy from flask.ext.login import LoginManager from flask.ext.openid import OpenID from config import basedir from flask.ext.admin import Admin app = Flask(__name__) app.config.from_object('config') db = SQLAlchemy(app) lm = LoginManager() lm.init_app(app) lm.login_view = 'login' oid = OpenID(app, os.path.join(basedir, 'tmp')) admin = Admin(app) from app import views, models
# -*- coding: utf-8 -*- from app import db, admin from flask.ext.admin.contrib.sqla import ModelView from models import User admin.add_view(ModelView(User, db.session))
Офлайн
добавление вьюхи нужно делать в файле __init__.py
Офлайн
Безусловно - но как вы могли заметить я как раз и спрашиваю как вынести ето в отдельный файл! Я не хочу держать настройки админки и так далее в __init__ файле
Офлайн
admin.init_app(app) не видно в коде
и в __init__ импортнуть модуль app/admin.py надо бы (до init)
Офлайн
ниочем….
Офлайн
вынести никак, а файл с обьявлением app и добалением расширений для этого и нужен, обьявите вьюху в другом файле, где и кастомизируйте, и импортируйте в __init__.py
Отредактировано sander (Фев. 20, 2015 13:13:07)
Офлайн
Других вариантов нет что ли?
Офлайн
ZerG
А чем Вас смущает решение sander?
Все правильно.
Так делаются и формы. Выносятся в отдельный файл и импортируются в файле __init__.py, т.е.
app/__init__.py
Там же конфигурируется проект и инициализируются все подключения. Также нормальной практикой считается настройка там логгера.
Офлайн