烧瓶中的动态render_template()

最大限度

我的烧瓶应用程序中有多个视图。每个视图都有其自己的子视图,每个子视图不断具有其小模板。视觉演示和url结构如下:

|-settings ___________ [@app.route(/manage)]
|--menu_settings _____ [@app.route(/manage?current=menu_settings)]
|--main_settings _____ [@app.route(/manage?current=main_settings)]
|--additional_settings [@app.route(/manage?current=additional_settings)]

|-online_store [@app.route(/online_store)]
|--delivery __ [@app.route(/online_store?current=delivery)]
|--payment ___ [@app.route(/online_store?current=payment)]
|--store _____ [@app.route(/online_store?current=store)]

我想做的是使用if或switch条件。例如:

@admin.route('/manage', methods = ['GET', 'POST'])  
@login_required
def manage(current = ''):

    current = request.args.get('current') 

    if current == 'menu_settings':
        return render_template('admin/manage/site_figuration.html',
            title = 'Site figuration',
            current = current)
    elif current == 'internet_market':
        return render_template('admin/manage/internet_market.html',
        title = 'Internet market',
        current = current)
    else:
        return '404 - Template not found'

我的问题是我做对了吗?还是有其他更简单的方法来克服这个问题?使用此方法是否合理,或者我必须使用JQuery load()方法?

安德烈斯·凯尼科夫斯(Andrejs Cainikovs)

看来您使事情变得太复杂了。怎么样:

@admin.route('/manage')
@admin.route('/manage/<current>')
@login_required
def manage(current = None):
    if current == 'menu_settings':
        template = 'admin/manage/site_configuration.html'
        title = 'Site configuration'
    elif current == 'internet_market':
        template = 'admin/manage/internet_market.html'
        title = 'Internet market'
    elif current is None:
        template = 'admin/manage/default.html'
        title = 'Default page for manage'
    else:
        flask.abort(404)

    return render_template(template, title=title, current=current)

但是我也发现有多种路线是更正确的方法。为什么要重新发明轮子?

@admin.route('/manage')
@login_required
def manage():
    return render_template('admin/manage/default.html',
                           title='Default page for manage',
                           current=None)

@admin.route('/manage/menu_settings')
@login_required
def manage_menu_settings():
    return render_template('admin/manage/site_configuration.html',
                           title='Site configuration',
                           current='menu_settings')

@admin.route('/manage/internet_market')
@login_required
def manage_internet_market():
    return render_template('admin/manage/internet_market.html',
                           title='Internet market',
                           current='internet_market')

注意:请注意,此代码未经测试,请注意错误和/或错别字。

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

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

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

烧瓶:在返回的render_template()或redirect()中包含HTML

来自分类Dev

从类生成的列表不可用,在烧瓶中返回 render_template

来自分类Dev

烧瓶:带有路径的render_template

来自分类Dev

在Pythonanywhere上使用render_template的TemplateNotFound错误烧瓶

来自分类Dev

render_template中的flask参数

来自分类Dev

render_template 中的空列表

来自分类Dev

使用烧瓶render_template在前端制作一个高图

来自分类Dev

我如何每分钟烧瓶调用一次render_template()

来自分类Dev

烧瓶render_template无法与锚标记一起使用-jinja2.exceptions.TemplateNotFound

来自分类Dev

我如何每分钟烧瓶调用一次render_template()

来自分类Dev

Python Flask从变量中渲染文本,例如render_template

来自分类Dev

Flask render_template数据发送,在jQuery中处理

来自分类Dev

render_template中的可选关键字参数

来自分类Dev

Rails RSpec render_template错误

来自分类Dev

删除数据库中的条目后,flask render_template()不显示主页

来自分类Dev

控制如何在Flask中的render_template之前流回到语句?

来自分类Dev

render_template和重定向之间的区别?

来自分类Dev

render_template无法对对象进行jsonify

来自分类Dev

如何从ajax POST表单提交使用Flask的render_template

来自分类Dev

Flask,json,render_template,表单操作,数据表

来自分类Dev

Flask:将HTML数据帧处理为render_template

来自分类Dev

如何从ajax POST表单提交使用Flask的render_template

来自分类Dev

AttributeError:'MainHandler'对象没有属性'_render_template'

来自分类Dev

python flask render_template html无法正确渲染

来自分类Dev

render_template 找不到模板, send_file 可以

来自分类Dev

Flask 在 render_template 后追加结果的问题

来自分类Dev

Flask render_template() & **locals() arg 不工作......不会在 HTML 文本中显示 python 变量

来自分类Dev

使用render_template有条件地呈现HTML段

来自分类Dev

Redis后台作业完成后如何返回flask render_template?

Related 相关文章

  1. 1

    烧瓶:在返回的render_template()或redirect()中包含HTML

  2. 2

    从类生成的列表不可用,在烧瓶中返回 render_template

  3. 3

    烧瓶:带有路径的render_template

  4. 4

    在Pythonanywhere上使用render_template的TemplateNotFound错误烧瓶

  5. 5

    render_template中的flask参数

  6. 6

    render_template 中的空列表

  7. 7

    使用烧瓶render_template在前端制作一个高图

  8. 8

    我如何每分钟烧瓶调用一次render_template()

  9. 9

    烧瓶render_template无法与锚标记一起使用-jinja2.exceptions.TemplateNotFound

  10. 10

    我如何每分钟烧瓶调用一次render_template()

  11. 11

    Python Flask从变量中渲染文本,例如render_template

  12. 12

    Flask render_template数据发送,在jQuery中处理

  13. 13

    render_template中的可选关键字参数

  14. 14

    Rails RSpec render_template错误

  15. 15

    删除数据库中的条目后,flask render_template()不显示主页

  16. 16

    控制如何在Flask中的render_template之前流回到语句?

  17. 17

    render_template和重定向之间的区别?

  18. 18

    render_template无法对对象进行jsonify

  19. 19

    如何从ajax POST表单提交使用Flask的render_template

  20. 20

    Flask,json,render_template,表单操作,数据表

  21. 21

    Flask:将HTML数据帧处理为render_template

  22. 22

    如何从ajax POST表单提交使用Flask的render_template

  23. 23

    AttributeError:'MainHandler'对象没有属性'_render_template'

  24. 24

    python flask render_template html无法正确渲染

  25. 25

    render_template 找不到模板, send_file 可以

  26. 26

    Flask 在 render_template 后追加结果的问题

  27. 27

    Flask render_template() & **locals() arg 不工作......不会在 HTML 文本中显示 python 变量

  28. 28

    使用render_template有条件地呈现HTML段

  29. 29

    Redis后台作业完成后如何返回flask render_template?

热门标签

归档