我的表格是这样的:
class ContributorSearchForm(forms.Form):
space = forms.ChoiceField(widget = forms.Select())
sub_category = forms.ChoiceField(widget = forms.Select(), required=False)
style = forms.ChoiceField(widget=forms.Select(), required=False)
colour = forms.ChoiceField(widget=forms.Select(), required=False)
material_type = forms.ChoiceField(widget=forms.Select(), required=False)
我需要这样的网址:
www.myabc.com/space-<spacevalue>/subcategory-<sub-category-value>/style-<style-value>/colour<colour-value>/material-<material-value>
当有人搜索空间,子类别或任何可能的组合时,就像有人只搜索空间和颜色,空间和风格等等? 可以用一个网址来实现吗?
答案 0 :(得分:0)
您指定的URL对于搜索没有任何意义 - 它是用于显示子项的结构,即位于空间中的子类别中的颜色,而不是搜索查询。如果这是客户的要求,请向客户解释如何构建URL。
我建议使用GET参数,如下所示:
www.myabc.com/?space=<spacevalue>&subcategory=<sub-category-value>&style=<style-value>&colour=<colour-value>&material=<material-value>
在您的视图中,您收集搜索参数:
space_filter = request.GET.get('space', None)
subcategory_filter = request.GET.get('subcategory', None)
style_filter = request.GET.get('style', None)
colour_filter = request.GET.get('colour', None)
material_filter = request.GET.get('material', None)