过滤外键上的模型

时间:2018-10-01 22:15:47

标签: django django-models django-forms

好的,我正在拔头发(我没有很多),我创建了一个使用2个模型的FormView。一个模型仅显示表中的某些信息(不可编辑),另一个模型是用户从下拉框中选择两项的形式。我需要过滤第一个下拉框。下面是我正在使用的不起作用的代码:

views.py

def assign_load(request):
    form = DispatchForm(request.POST or None)
    loads = Load.objects.all().filter(active=True, dispatched=False, 
                                  picked_up=False, delivered=False,
                                  billed=False, 
                                  paid=False).order_by('start_pickup_date')
    context_dict = {'dispatch' : form, 'load' : loads}
    if form.is_valid():
        save_it = form.save()
        save_it.save()
        new_dispatch = Dispatch.objects.get(id=save_it.id)
        fix_load = Load.objects.get(id=new_dispatch.load_number_id)
        fix_load.dispatched = True
        fix_load.save()
        return HttpResponseRedirect('/dispatch/dispatch/')

    return render(request, 'dispatch/dispatch_form.html', context_dict)

forms.py

class DispatchForm(ModelForm):
    class Meta:
        model = Dispatch
        fields = ['load_number', 'truck', 'start_mileage', 'end_mileage', 
              'pickup_date',
              'pickup_time', 'delivery_date', 'delivery_time', 'driver_pay', 
              'fuel_cost', 'miles',
              'status']

        def get_queryset(self):
            return self.model.objects.filter(load_number__dispatched=False)

我正在尝试过滤表格中的模型.py我尝试过使用def get(),def get_queryset()和def get_context_data,它们都没有返回经过过滤的查询集...我知道我缺少一些简单的东西,但是我的想法不多了,任何帮助都会很棒...如果您需要更多信息,也请告诉我。

感谢您的所有帮助!

0 个答案:

没有答案