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

未加载django表单初始值

  •  0
  • max  · 技术社区  · 6 年前

    我不明白为什么django 1.8没有选择初始值。 这是我的代码:

    class TestForm(forms.Form):
        x = forms.ChoiceField(choices=[('a', 'a'), ('b', 'b')], initial=('b', 'b'), required=True)
    
    
    @staff_member_required
    def view(request):
        data = Bunch()
        if request.method == "GET":
            if 'save' in request.GET:
                data.form = TestForm(request.GET)
                if data.form.is_valid():
                    pass
                else:
                    logger.error('Invalid form.')
            else: # nothing is submitted:
                data.form = TestForm(initial={'x': ('b', 'b')})
    
    
            return render(request, 'test.html', data)
        return HttpResponse("Invalid request method: %s" % request.method)
    
    0 回复  |  直到 6 年前
        1
  •  0
  •   max    6 年前

    我的错误是初始值应该是id,而应该是id和value的元组。