gpt4 book ai didi

python - 如何访问 __init__ 方法中的 django 表单值以进行查询

转载 作者:太空宇宙 更新时间:2023-11-03 15:52:28 28 4
gpt4 key购买 nike

我有一个包含外键的模型:

class Part(models.Model):
partType = models.ForeignKey(PartType, on_delete=models.CASCADE)
brand = models.ForeignKey(Brand, on_delete=models.CASCADE)
part_name = models.CharField(max_length=60)

class QuotePart(models.Model):
quote = models.ForeignKey(Quote, on_delete=models.CASCADE)
line = models.PositiveSmallIntegerField(default=1)
partType = models.ForeignKey(PartType, on_delete=models.CASCADE)
# part can be None if the part has not been selected
part = models.ForeignKey(Part, on_delete=models.CASCADE,blank=True,null=True)

我有一个允许将零件添加到报价单的表格,我想将表格上的选择限制为正确 PartType 的零件,但我的代码不起作用:

    class QuoteBikePartForm(ModelForm):
def __init__(self, *args, **kwargs):
super(QuoteBikePartForm, self).__init__(*args, **kwargs)
self.fields['partType'].widget.attrs['disabled'] = True
self.fields['frame_part'].widget.attrs['disabled'] = True
partType = kwargs.pop('partType')
self.fields['part'].queryset = Part.objects.filter(partType=partType.pk)

class Meta:
model = QuotePart
fields = ['quote','line','partType','frame_part', 'part', 'quantity','cost_price', 'sell_price']

QuoteBikePartFormSet = inlineformset_factory(Quote, QuotePart, form=QuoteBikePartForm)

我已经尝试了很多不同的事情,但到目前为止都没有运气。

最佳答案

您可以使用“self.instance.key_name”来访问该值。

关于python - 如何访问 __init__ 方法中的 django 表单值以进行查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45785742/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com