代码之家  ›  专栏  ›  技术社区  ›  Clash

Django窗体向导和视图

  •  1
  • Clash  · 技术社区  · 15 年前

    基本上,我只想得到参数community_name,这可以用

    (r'^(?P<community_name>\w+)/matches/submit/$', MatchWizard([MatchStep1Form, MatchStep2Form, MatchStep3Form])),
    

    还是我需要一个视角? 如果我有一个视角,我可以像

    (r'^(?P<community_name>\w+)/matches/submit/$', "matches.views.submit_form"),
    

    做正常的观察程序, def submit_form(request, community_name):

    有什么想法吗?谢谢

    1 回复  |  直到 15 年前
        1
  •  0
  •   Clash    15 年前

    发布我发现的解决方案。在看了源代码之后 FormWizard ,我注意到变量community_name在 kwargs 属于 parse_params

    def parse_params(self, request, *args, **kwargs):
        community = get_object_or_404(Community, slug=kwargs['community_name'])
        self.extra_context['community'] = community