我的应用程序是按照以下蓝图结构开发的。
├── app
│ ├── assets.py
│ ├── static
│ │ ├── gen
│ │ │ ├── assets_frontend.css
│ │ │ ├── assets_frontend.js
│ │ │ ├── home.css
│ │ │ └── home.js
│ │ ├── lib
│ │ ├── bootstrap-4.3.1
│ │ │ ├── CSS
│ │ │ │ ├── a_assets.css
│ │ │ └── js
│ │ │ ├── a_assets.js
│ │ │
│ │ ├── jquery-3.4.1
│ │ │ └── jquery-3.4.1.min.js
│ │ └── popper.js-1.14.7
│ │ └── popper.min.js
│ │
│ ├── templates
│ │ ├── 404.html
│ │ ├── include
│ │ └── website
│ │ └── index.html
│ └── website
│ ├── assets.py
│ ├── controllers.py
│ ├── forms.py
│ ├── __init__.py
│ ├── models.py
│ ├── static
│ │ └── src
│ │ └── CSS
│ │ └── common.css
│ └── templates
│ └── index.html
├── app.db
├── config.py
├── requirements.txt
└── run.py
在 asstes.py 中为所有应用添加我所有的通用资产,并在项目中进行了如下注册。
assets_frontend_js = [
'lib/jquery-3.4.1/a_assets.js',
]
assets_frontend_css = [
'lib/bootstrap-4.3.1/css/a_assets.css',
]
assets_bundles = {
'assets_frontend_js': Bundle(
*assets_frontend_js,
output='gen/assets_frontend.js',
filters='jsmin'),
'assets_frontend_css': Bundle(
*assets_frontend_css,
output='gen/assets_frontend.css',
filters='cssmin', extra={'rel': 'stylesheet/css'}),
}
assets = Environment(app)
assets.register(assets_bundles)
现在,问题是如何在不编辑 My_apps / assets.py 的情况下,将新应用的资产添加或注册到主要资产中。
手段是可以通过任何方法在网站应用中添加 assets.py 文件并仅注册网站资产。
我的目标是不将整个项目资产写入主项目asset.py文件,然后仅从其拥有的应用程序加载资产。
我们如何做到这些?