您好,我正在開發 Django Web 應用程序 - 我有一個選擇框,其中包含特定模型中的所有對象。選擇框是在模板中創建的,它不是直接表單的一部分。當我提交時,我能夠訪問用戶選擇的值,但是當我嘗試使用該值作為查詢集的一部分時,它不會返回預期值。models.pyclass TaskGroup(models.Model): name = models.CharField(max_length=100, null=False, blank=False) def __str__(self): return self.nameclass TaskGroupDetail(models.Model): taskGroup = models.ForeignKey(TaskGroup, null=True, blank=True) taskType = models.ForeignKey(TaskType, null=False, blank=False)views.pydef CreateShipmentView(request): if request.method == 'POST': shipment_form = CreateShipmentForm(request.POST) if shipment_form.is_valid(): new_shipment = shipment_form.save() group = request.POST.get('groups') #get the task group selected print(group) #this returns the expected value ..... #if a task group was added, create the tasks groupDetails = TaskGroupDetail.objects.get(taskGroup = group) #this returns a blank queryset print(groupDetails) #this returns a blank queryset return redirect('ShipmentListView') ... else: shipmentForm = CreateShipmentForm() groups = TaskGroup.objects.all() context = { 'shipmentForm': shipmentForm, 'groups': groups, } return render(request, 'create-shipment.html', context)print(group)當我得到我期望的值時引用上面的代碼,我可以看到該值與taskGroup我嘗試在查詢集中返回的對象的字段相匹配。我假設這與值從選擇傳遞到視圖的方式有關(就像它不是 TaskGroup 對象或其他東西),但我不太確定此時要嘗試修復它。有什么想法嗎?
1 回答

守著星空守著你
TA貢獻1799條經驗 獲得超8個贊
由于 Group 是用 TaskGroup 的名稱分配的,因此而不是 get(taskGroup = group)。然后使用 get(taskGroup__name = group) 來訪問 taskGroup name 屬性。
添加回答
舉報
0/150
提交
取消