在 Python 中插入包含特定路线的文件夹到瓶子应用程序

Inserting a folder containing specific routes to a bottle application in Python

假设我们有以下目录结构...

+-- main.py
|
+--+ ./web
|  |
|  +--- ./web/bottleApp.py

目前,我想整理文件,以便我可以在不同区域分离不同的功能。模板 main.py./web/bottleApp.py 如下所示 ...

这是 ./web/bottleApp.py 文件:

import bottle

app = bottle.Bottle()

@app.route('/')
def root():    
    return 'This is the root application'
# some additional functions here ...

这是 main.py 文件 ...

from web import bottleApp as app 

with app.app as report:
    # Some random routes here ...
    report.run(host = 'localhost', port=8080)

现在我想添加另一个文件夹,它可以处理一些我可以选择使用的功能,这是我的一堆项目,(例如通过刚刚创建的 Web 界面处理配置文件)

假设我们要插入以下 folder/file 配置 ...

+-- main.py
|
+--+ ./web
|  |
|  +--- ./web/bottleApp.py
|
+--+ ./configure
   | 
   +--- ./configure/config.py

鉴于原始 app = bottle.Bottle() 我想在文件 ./configure/config.py 中创建以下示例路由:

@app.route('/config/config1')
def config1():
    return 'some config data'

我该怎么做呢?一旦我 运行 main.py 文件,我如何确保其他路由可用?

Bottle 可以 运行 多个 Bottle 应用程序作为一个实例。 你可以在 main.py

上使用类似的东西
import bottle
from web.bottleApp import app
from configure.config import configure_app

main = bottle.Bottle()
main.mount("/config/",configure)
main.mount("/",app)

main.run(host = 'localhost', port=8080)

在 configure/config.py 上是这样的:

import bottle

config_app = bottle.Bottle()

@config_app.route('/config1')
def config1():    
    return 'some config data'