如何使用' auth.navbar'自定义导航?

时间:2014-11-25 14:49:44

标签: python web2py

我正在寻找自定义导航的方法,例如不将用户相关链接放入下拉菜单。

如何使用auth.navbar创建自定义导航?

我在documents中找到了这个: {{= auth.navbar(...)}}显示对当前用户的欢迎,并根据上下文链接到auth函数,如login,logout,register,change password等。它是一个帮助工厂,其输出可以像任何其他帮助一样进行操作。

修改 我只是想改变Auth-Menu的渲染方式。现在它呈现为下拉菜单。我发现auth.navbar(mode="dropdown")这样做了。删除mode="dropdown"会将输出更改为简单的SPAN。

或者反过来说 - 我可以在哪里更改提供输出的方法?

编辑2: 目前我这样做了 - 但我认为这不是最优雅的方式:

{{for i in range(0, len(auth.navbar().elements()[0])):}}
    {{if i in [2, 4, 6, 8]:}} # Get rid of "[,],|"
        {{next}}
    {{else:}}
    <li>{{=auth.navbar().elements()[0][i]}}</li>
    {{pass}}
{{pass}}

1 个答案:

答案 0 :(得分:1)

查看auth.navbar signature。你想要的就是这个:

{{=auth.navbar(separators=('', '', ''))}}

您也可以拨打auth.navbar(mode='bare'),它会返回包含相关网址和标签的字典。然后,您可以将该字典传递给自定义导航栏功能,以根据需要布置和设置导航栏的样式。有关详细信息,请参阅docstring