0

私の Django アプリにはModelChoiceField、オブジェクトを選択するためのインデックス ビューがあります。送信ボタンをクリックすると、そのオブジェクトを次のビューに渡したいのですが、うまくいきません。

これは私のコードです: ビュー:

def index(request):
    args = {}
    args.update(csrf(request))
    if request.user.is_authenticated():
        if request.POST:
            form = EquipmentForm(request.POST)
            if form.is_valid():
                form.save()
                request.session['chosen_equipment'] = form.cleaner(self)
                return HttpResponseRedirect('/lru/reservation/')            
        else:
            form = EquipmentForm()
        args['form'] = form
        args['user'] = request.user
        args['reservation_list'] = Reservation.objects.all()
        return render_to_response('lru/index.html', args)
    else:
        return HttpResponseRedirect('/lru/login/')

def reservation(request):
    if request.POST:
        form = ReservationForm(request.POST)
        if form.is_valid():
            form.save()
            return HttpResponseRedirect('/lru/')
    else:
        form = ReservationForm()

    form = ReservationForm(initial={'reserved_by': request.user})
    args = {}
    args.update(csrf(request))
    args['form'] = form
    args['chosen_equipment'] = request.session.get('chosen_equipment', ' Not found')

    return render_to_response('lru/reservation.html', args)

フォーム:

class EquipmentForm(forms.Form):

    class Meta:
        model = Equipment

    equipment = forms.ModelChoiceField(queryset=Equipment.objects.all())

    def cleaner(self):
        data = self.cleaned_data[equipment]
            return data

ここで何が間違っていますか?

4

1 に答える 1