如何使用文件夹作为模块在pythonanywhere上部署Flask应用程序

伊万

目前,我正在尝试在PythonAnywhere上部署我的第一个FLASK应用程序。

我不确定这是否是正确的术语,但是我有一个文件夹作为模块,在那里我似乎找不到正确的方式来部署我的应用程序。我什至不知道从哪里开始解决这个问题。有什么建议吗?

文件和文件夹的布局被截断

我的init .py代码是:

import os

from flask import Flask


def create_app(test_config=None):
    # create and configure the app
    app = Flask(__name__, instance_relative_config=True)
    app.config.from_mapping(
        SECRET_KEY='secret',
        DATABASE=os.path.join(app.instance_path, 'LAMA.sqlite'),
    )

    if test_config is None:
        # load the instance config, if it exists, when not testing
        app.config.from_pyfile('config.py', silent=True)
    else:
        # load the test config if passed in
        app.config.from_mapping(test_config)

    # ensure the instance folder exists
    try:
        os.makedirs(app.instance_path)
    except OSError:
        pass

    # database
    from . import db
    db.init_app(app)

    # authentication blueprint
    from . import auth
    app.register_blueprint(auth.bp)


    # blog blueprint - the main index
    # from . import blog
    # app.register_blueprint(blog.bp)
    # app.add_url_rule('/', endpoint='index')

    # book blueprint 
    from . import book
    app.register_blueprint(book.bp)
    app.add_url_rule('/', endpoint='index')

    return app

我还遵循了python调试页面,在其中执行以下操作:

>>> import LAMA
>>> print(LAMA)
<module 'LAMA' from '/home/ivanv257/LAMA_MAIN/LAMA/__init__.py'>

因此,在此阶段,我的WSGI配置文件中包含:

import sys

path = '/home/ivanv257/LAMA_MAIN/LAMA/__init__.py'
if path not in sys.path:
    sys.path.append(path)

from LAMA import app as application

我也尝试过许多其他组合,例如

path = '/home/ivanv257/LAMA_MAIN/LAMA/'
from init import app as application

path = '/home/ivanv257/LAMA_MAIN/'
from init import app as application

path = '/home/ivanv257/LAMA_MAIN/'
from LAMA import app as application

我的源代码路径是:/ home / ivanv257 / LAMA_MAIN / LAMA,尽管我也尝试了不同的组合,例如/ home / ivanv257 / LAMA_MAIN /

错误详细信息:

2018-12-08 10:05:32,028: Error running WSGI application
2018-12-08 10:05:32,030: ModuleNotFoundError: No module named 'LAMA'
2018-12-08 10:05:32,030:   File "/var/www/ivanv257_pythonanywhere_com_wsgi.py", line 83, in <module>
2018-12-08 10:05:32,030:     from LAMA import app as application  # noqa
伊万

为了解决我的问题,我在喇嘛导入create_app中更改了以下内容(在一些帮助下):

import sys

path = '/home/ivanv257/LAMA_MAIN/LAMA'
if path not in sys.path:
    sys.path.append(path)

from lama import create_app

application = create_app()

我还必须从中删除。只是进口

    import db
    db.init_app(app)

    # authentication blueprint
    import auth
    app.register_blueprint(auth.bp)

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

在pythonanywhere.com上部署Flask网站/应用程序

使用 pythonanywhere 在网络上部署 Python Flask 应用程序

如何让firebase部署器检测socket.io模块文件夹并使用socket.io功能部署firebase应用程序?

如何将 Angular 2 应用程序部署为独立的(使用 dist 文件夹)

使用 CDK 部署 Amplify 应用程序时,如何指定 monorepo 的分支文件夹?

如何通过链接(而不是复制)使应用程序使用其自身文件夹之外的模块?

如何在子文件夹上部署 React 应用程序以进行本地开发?

在Elastic Beanstalk上部署Flask应用程序:没有名为“应用程序”的模块

在apache文件夹中部署angular应用程序

如何配置应用程序引擎以使用文件结构中的node_modules文件夹部署您的应用程序?

如何使用自定义项目文件夹结构在Beanstalk中部署Go Web应用程序

如何在传统的tomcat webapps文件夹中部署Spring Boot MVC应用程序?

使用Flask应用程序文件夹中的png文件

如何使用appscale在群集上部署应用程序?

如何压缩'dist'文件夹作为ember-cli应用程序的最终构建步骤

Flask应用程序中有多个静态文件夹和模板文件夹

如何使用应用程序脚本在子文件夹内的子文件夹中搜索文件?

如何使用“文件”应用程序(Nautilus)将文件拖放到文件夹中?

在 CodeIgniter 中,如何使用 site_url 访问应用程序文件夹之外的文件夹

无法在AppEngine上部署应用程序模块

在 Heroku 上部署多模块 java 应用程序

dotnet核心应用程序,如何使用appsettings文件构建到输出文件夹

如何使用应用程序专用文件夹中的文件设置通知声音?

如何使用Chrome(ium)应用程序编辑我自己的用户文件夹之外的文件?

如何使用子文件夹中的ico文件设置WPF应用程序图标

在作为Instagram副本的AWS上部署应用程序

在 Heroku 上部署以 nginx 作为代理的 Springboot 应用程序

斯威夫特:如何确定应用程序文件夹?

在Apache上部署Flask应用程序时出错