如何为 url_for 路径添加子文件夹?

目前,我在此蓝图文件夹中有名为“analytics”的蓝图和 views.py 文件。我所有的函数都存储在这个单一的 views.py 文件中,我用 url_for 调用它们,例如:


url_for('analytics.get_all_equipped_armors')

url_for('analytics.gamerounds_basic_info')

url_for('analytics.get_average_kill_from_weapons')

我想在逻辑上将它们分开,而不为我的数据库中存在的每个实体创建另一个蓝图。


我想使用带有子文件夹的 url_for() 端点,url_for('analytics.armors.get_all_equipped')但似乎禁止为路径添加子文件夹。


如何使用 url_for 函数的子文件夹组织蓝图和端点的结构?


蓝图:


from flask import Blueprint


analytics = Blueprint('analytics', __name__, url_prefix='/analytics')


from . import views

功能:


@analytics.route('/armors/get-all-equipped', methods=['GET', 'POST'])

def get_all_equipped_armors():

    form = LvlRangesForm()


    if request.method == 'POST':

        if form.validate_on_submit():

            min_lvl = form.min_level.data

            max_lvl = form.max_level.data

            data = Armors.get_all_equipped(min_lvl=int(min_lvl), max_lvl=int(max_lvl))


            return render_template('analytics/armors/all_equipped_armors.html', form=form, data=data, result=True)


    return render_template('analytics/armors/all_equipped_armors.html', form=form)


精慕HU
浏览 147回答 1
1回答

白板的微信

这可能太简单了,但没有必要复制端点函数名称中的所有路由信息。您可以保留url_for()调用原样,只更改模板文件的组织。或者,您可以按照问题中显示的方式命名端点,但使用下划线作为逻辑分隔符:url_for('analytics.armors_get_all_equipped').
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python