2016-07-04 24 views
5

kaydederken projemin düzenidir sahiptir'işlevi' nesne hiçbir özellik 'adı' İşte plan

import os 
basedir = os.path.abspath(os.path.dirname(__file__)) 
from flask import Blueprint 
from flask import Flask 
from flask_cors import CORS, cross_origin 
app = Flask(__name__) 
app.debug = True 

CORS(app) 

from baseflask.health import health 
app.register_blueprint(health) 

İşte hata:

Traceback (most recent call last): 
    File "/home/ubuntu/workspace/baseflask/wsgi.py", line 10, in <module> 
    from baseflask import app 
    File "/home/ubuntu/workspace/baseflask/baseflask/__init__.py", line 18, in <module> 
    app.register_blueprint(health) 
    File "/usr/local/lib/python2.7/dist-packages/flask/app.py", line 62, in wrapper_func 
    return f(self, *args, **kwargs) 
    File "/usr/local/lib/python2.7/dist-packages/flask/app.py", line 880, in register_blueprint 
    if blueprint.name in self.blueprints: 
AttributeError: 'function' object has no attribute 'name' 
+0

Yaptığınız hatanın Flask veya onun tasarımlarına özgü olmadığını unutmayın. Ancak, belgelerin iyileştirilmesi gerektiğini düşünüyorsanız, her şeyden önce projeyi projenin [sorunlar sayfası] (https://github.com/pallets/flask/issues) aracılığıyla yapıcı bir şekilde gerçekleştirin. – jonrsharpe

cevap

12

You maskeli yeniden kullanarak adıyla planı:

health = Blueprint('health', __name__) 
@health.route("/health", methods=["GET"]) 
def health(): 

Rotayı ve plan aynı adı kullanmayın ikisine de sahip olamaz; planı değiştirdiniz ve rota işlevini kaydetmeye çalışıyorsunuz.

health_blueprint = Blueprint('health', __name__) 

ve kayıt:

onu yeniden adlandırma

from baseflask.health import health_blueprint 
app.register_blueprint(health_blueprint) 
0
health = Blueprint('health', __name__) 
@health.route("/health", methods=["GET"]) 
def health(): 

Sizin planı adı fonksiyon adıyla aynıdır, bunun yerine işlev adı adlandırmak deneyin.

health = Blueprint('health', __name__) 
@health.route("/health", methods=["GET"]) 
def check_health(): 
İlgili konular