Невозможно отобразить флешку Hello World в подпакете - PullRequest
0 голосов
/ 11 октября 2018

Я не могу воспроизвести ни одного минимального примера на странице документации фляги, когда веб-приложение является подпакетом

In [8]: from subpkg.apps.myapp import run_me

In [9]: run_me.main()
 * Running on http://localhost:5050/ (Press CTRL+C to quit)
127.0.0.1 - - [10/Oct/2018 22:38:09] "GET / HTTP/1.1" 404 -

Структура папок является частью большой библиотеки Python.Например, только .py файлы, содержащие код, перечислены ниже

pkg/
-- setup.py
-- subpkg/
-- __init__.py
-- -- apps/
-- -- __init__.py
-- -- -- myapp/
-- -- -- -- __init__.py
-- -- -- -- run_me.py
-- -- -- -- web/
-- -- -- -- -- views.py
-- -- -- -- -- __init__.py

Создать пример

mkdir pkg; mkdir pkg/subpkg/; mkdir pkg/subpkg/apps; mkdir pkg/subpkg/apps/myapp; mkdir pkg/subpkg/apps/myapp/web
touch pkg/__init__.py; touch pkg/subpkg/__init__.py; touch pkg/subpkg/apps/__init__.py; touch pkg/subpkg/apps/myapp/__init__.py; touch pkg/subpkg/apps/myapp/web/__init__.py; touch pkg/setup.py; touch touch pkg/subpkg/apps/myapp/web/views.py; touch pkg/subpkg/apps/myapp/run_me.py

pkg/setup.py

from setuptools import find_packages, setup
setup(
    name='pkg-myapp',
    packages=find_packages(),
    include_package_data=True,
    install_requires=['flask==0.11.1'],
    entry_points={'console_scripts': ['pkg-myapp=pkg.apps.myapp.run_me:main',],},
)

pkg/subpkg/apps/myapp/run_me.py

from .web import app
def main():
    app.run('localhost', 5050)

pkg/subpkg/apps/myapp/web/views.py

from . import app
@app.route("/")
def index():
    return 'hello world'

pkg/subpkg/apps/myapp/web/__init__.py

from flask import Flask
app = Flask('subpkg.apps.myapp.web')

Refs

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...