显示Django形式的下拉菜单

时间:2019-12-19 07:01:01

标签: python django django-forms

我正在创建django表单,其中包含一个通过外键与另一个模型相关的字段。 最初,它显示的是相关模型中所有实例的下拉列表,但我只想显示与我使用此代码的用户相关的那些字段。

Forms.py

class OutwardDocketForm(forms.ModelForm):

    class Meta:
        model = OutwardDocket
        fields = "__all__"
        exclude = ["created_by"]


        def __init__(self, *args, **kwargs):
            super(OutwardDocketForm).__init__(*args, **kwargs)
            print("self")
            self.fields['sending_location'].queryset = Receiver_client.objects.filter(emitter=self.request.user.id)

但是它似乎没有用,因为它仍然显示完整的下拉列表,而不是必需的

Models.py

class OutwardDocket(models.Model):
    transaction_date = models.DateField(default=datetime.now)
    dispatch_date = models.DateField(default=datetime.now)
    sending_location = models.ForeignKey(Receiver_client, on_delete=models.CASCADE, related_name='receiver_location')

class Receiver_client(models.Model):
    name = models.CharField(max_length=500, default=0)
    city = models.CharField(max_length=500, default=0)
    address = models.CharField(max_length=500, default=0)
    emitter = models.ForeignKey(Client, on_delete=models.CASCADE, related_name='client')

如何显示与特定用户相关的下拉列表?

0 个答案:

没有答案