2016-11-30 1 views
0

청사진이 올바르게 작동합니다.다중 경로 파일로 청사진을 구성하는 방법

응용 프로그램 구조 :

app.register_blueprint(users, url_prefix = '/users') 

그리고 사용자/routes.py에서

내가 그것을 만들 :

이 application.py에서
application.py 

users/routes.py 

내가 청사진을 등록

users = Blueprint('users', __name__, template_folder = "usersViews") 
@users.route('/registration', methods = [ 'GET' ]) 
def get_register_user_form(): 
    # Code...... 

내가 다른 사용자를 추가 할 필요가 있습니다 /에서 @ users.route를 사용해야합니다 :

users/route2.py 

users/route3.py 

그러나 청사진은 원본 사용자/routes.py에서만 생성되므로이 기능은 작동하지 않습니다. 이 사건을 처리 할 적절한 방법이 확실치 않니? 사용자 = 청사진 ('사용자', 이름, template_folder = "usersViews")을 사용하여 각 경로 파일에서 청사진을 재생성하는 것은 적절하지 않습니다. 그럼 내가 어떻게 할 수 있니?

+0

route2.py에서 '경로 가져 오기 사용자'는 어떨까요? –

+0

hmmm 어디에서 "경로"를 얻습니까? –

+1

첫 번째 파일의 이름으로 청사진을 만듭니다. –

답변

1

내가 이런 __init__.py 파일로이 중 일부를 분할 할 :

응용 프로그램 구조 :

__init__.py (main app) 
users/__init__.py (for blueprint) 
users/routes.py 
users/routes2.py 
users/routes3.py 

다음 주 __init__.py 설정 당신의 청사진에서 지금

app = Flask(__name__) 

from .users import users as user_blueprint 
app.register_blueprint(user_blueprint, url_prefix='/users') 

return app 

, users/__init__.py의 내용은 다음과 같습니다.

에서 그런
from flask import Blueprint, url_for 

users = Blueprint('users', __name__) 

from . import routes, routes2, routes3 

, users/routes2.py 등 :

from . import users 

주의해야 할 점은 : 나는 실제로 해본 적이 없다! 그러나 이것은 제가 플라스크 청사진에 사용하는 패턴이며 귀하의 문제를 해결할 것 같았습니다.

+0

천재,이 비밀은 init 파일에 !! –

+0

위대한, 다행스럽게 도울 수있어! – abigperson

+1

감사합니다. 왜에서. import routes, routes2, routes3는 users = .... 이후에 있어야합니다. users/__ init__.py? –

관련 문제