使用嵌套网址结构修改视图中HTML内容的最佳方法是什么?
例如,让我们说我有一个索引页面,为三只猫提供选择选项[" Small"," Medium"," Large& #34]。当用户选择" Small"时,我们可以将用户重定向到default/Small
视图。然后,该视图提供了一些额外的选择选项,例如[" Happy"," Sad"," Mad"]。当用户在此处选择一个选项时,请说“#34;快乐"”,我们可以通过args将该选择选项构建到网址中,现在网址变为default/Small/Happy
。但是,如果我创建了default/Small/Happy
视图,其中包含一些其他选项供用户使用,则该页面不会显示新内容(它仍会显示default/Small
中的内容)。最后,我想采取所有的args," Small",#34; Happy"等等,构建查询并向用户提供一些结果数据库。
我显然不完全明白这是如何运作的,所以我只需要一些指导。
答案 0 :(得分:1)
最佳方法取决于基于不同类别的视图中需要区别的内容。我们假设您有一个类似/myapp/default/index/Small/Happy
的网址。在index
函数中,您可以执行以下操作:
def index():
size = request.args(0)
emotion = request.args(1)
data = [code based on size and emotion]
return dict(size=size, emotion=emotion, data=data)
如果您需要根据类别在视图中创建不同的显示,则可以包含条件逻辑。
在/views/default/index.html:
{{if size == 'Small':}}
HTML for the small display
{{elif size == 'Medium':}}
...
{{pass}}