Iam, используя бесплатную версию PythonAnywhere, чтобы настроить небольшую службу отдыха для приложения. Я также использую колбу с чертежами, чтобы попытаться это сделать. У меня есть структура файла выглядит, как показано нижеПопытка перемещения указателей маршрута из основного сценария с использованием bluerint
mysite/
applicaction/
__init__.py,
models.py,
config.py
flask_app.py (тот же уровень, что и пакет MySITE)
Я использую flask_app.py запустить сервер, показанный ниже.
from application import __init__ as appmain
if __name__ == "__main__":
myapp = appmain.getapp()
myapp.run()
и в моей папке приложения я использую «инициализации .py», чтобы настроить мой «приложение» экземпляр вместе с копирку под названием «myblueprint» (код, приведенный ниже)
from flask import Flask, Blueprint
from flask.ext.sqlalchemy import SQLAlchemy
db = None
app = None
serviceblueprint = None
def init_app():
app = Flask(__name__)
app.config.from_object('config')
serviceblueprint = Blueprint('serviceblueprint', __name__)
app.register_blueprint(serviceblueprint)
db = SQLAlchemy(app)
def get_app():
init_app()
return app
затем Я пытаюсь определить простой декодер маршрута, используя зарегистрированный чертеж в моем скрипте service.py с импортированным «serviceblueprint». Идеально id как serive.py модуль, чтобы содержать класс, который может обрабатывать маршруты (не уверен, что это возможно), но плохо пересекают этот мост, когда я добираюсь до него. на текущий момент его основного сценария (как показано ниже)
from application import serviceblueprint
@serviceblueprint.route('/')
def get():
return "<h1>Yahoo!!!</h1>"
, к сожалению, я просто получаю страницу ошибки, когда я загрузить мой основной URL в браузере и относительно общего tracelog, что я не понимаю, на сервере. Похоже, что это не указывает на что-либо в моем коде. кроме, может быть, «ImportError: не могу импортировать приложение имен», но я не импортирую «приложение» в любой из моих сценариев в подарок.
2015-10-13 09:46:59,068 :Traceback (most recent call last):
2015-10-13 09:46:59,068 : File "/bin/user_wsgi_wrapper.py", line 134, in __call__
2015-10-13 09:46:59,068 : self.error_log_file.logger.exception("Error running WSGI application")
2015-10-13 09:46:59,068 : File "/usr/lib/python2.7/logging/__init__.py", line 1185, in exception
2015-10-13 09:46:59,069 : self.error(msg, *args, **kwargs)
2015-10-13 09:46:59,069 : File "/usr/lib/python2.7/logging/__init__.py", line 1178, in error
2015-10-13 09:46:59,069 : self._log(ERROR, msg, args, **kwargs)
2015-10-13 09:46:59,069 : File "/usr/lib/python2.7/logging/__init__.py", line 1270, in _log
2015-10-13 09:46:59,069 : record = self.makeRecord(self.name, level, fn, lno, msg, args, exc_info, func, extra)
2015-10-13 09:46:59,070 : File "/usr/lib/python2.7/logging/__init__.py", line 1244, in makeRecord
2015-10-13 09:46:59,070 : rv = LogRecord(name, level, fn, lno, msg, args, exc_info, func)
2015-10-13 09:46:59,070 : File "/usr/lib/python2.7/logging/__init__.py", line 284, in __init__
2015-10-13 09:46:59,070 : self.threadName = threading.current_thread().name
2015-10-13 09:46:59,070 : File "/usr/lib/python2.7/threading.py", line 1160, in currentThread
2015-10-13 09:46:59,070 : return _active[_get_ident()]
2015-10-13 09:46:59,070 : File "/bin/user_wsgi_wrapper.py", line 126, in __call__
2015-10-13 09:46:59,071 : app_iterator = self.app(environ, start_response)
2015-10-13 09:46:59,071 : File "/bin/user_wsgi_wrapper.py", line 140, in import_error_application
2015-10-13 09:46:59,071 : raise e
2015-10-13 09:46:59,071 :ImportError: cannot import name app
Если кто-нибудь может мне помочь, будь благодарен. Я новичок в колбе, так что, очевидно, я мог бы сделать очень простую ошибку. благодаря!
подумал, что вопрос был довольно прост. oh хорошо –
есть конкретный способ, чтобы люди вводили данные stacktrace. Я знаю, что это выглядит грязно выше. –