Flask-Nav Bootstrap导航栏,动态构造:将一些元素与右侧对齐

Jax*_*Jax 6 html python web-applications flask twitter-bootstrap

我目前正在创建一个基于Flask,Bootstrap和Flask-Nav扩展的WebApp.我创建了一个动态导航栏,工作得很好:

#custom navbar
def dynamic_navbar():
    navbar = Navbar(title='navbar_titel')
    navbar.items = [View('FirstPage', 'first_page')]   
    navbar.items.append(
    Subgroup('Dropdown1',
        View('Sub1', 'sub1_page'),
        View('Sub2', 'sub2_page'),
        View('Sub3', 'sub3_page')
                    )
            )       
    navbar.items.append(View('SecondPage', 'second_page'))
    return navbar

#register navbar to app    
nav.register_element('top', dynamic_navbar)
Run Code Online (Sandbox Code Playgroud)

我还更改了默认的BootstrapRenderer,因此我可以轻松更改导航栏引导程序模板

#Coustom Navbar Renderer to render after certain bootstrap navbars templates

class CustomRenderer(BootstrapRenderer):
    def visit_Navbar(self, node):
        nav_tag = super(CustomRenderer, self).visit_Navbar(node)
        nav_tag['class'] += 'navbar navbar-inverse'
        return nav_tag


#register renderer to app
register_renderer(app, 'custom', CustomRenderer)
Run Code Online (Sandbox Code Playgroud)

所有这一切都运行正常,我可以轻松地将它集成到我的主模板中作为一个块:

{% extends "bootstrap/base.html" %}

{% block navbar %}
{{nav.top.render(renderer='custom')}}
{% endblock %}

{% block content %}{% endblock %}
Run Code Online (Sandbox Code Playgroud)

所以这是最后的问题.我想将导航栏内部的一些元素(而不是所有元素)向右对齐(例如:仅查看(Sub3 ...).我知道如何直接在HTML文档中执行此操作,但不知何故有难以思考在我的Flask应用程序中执行此操作的简单方法,而不会丢失我的动态导航栏构造或创建许多新类.

有没有更简单的方法可以更改我的渲染器或创建View元素的子类来执行此操作?