Передача параметра URL в форму Django в качестве атрибута

Здравствуйте, я пытаюсь использовать параметр URL(id) в Django Model Forms в качестве переменной атрибута и получаю ошибку, как показано ниже.

Я не уверен, можно ли передать переменную id, вызывая класс "BidListing(id)" подобным образом.

И получаем его "BidListing(forms.ModelForm, id)" этим способом.

Ошибка

...\forms.py", line 24, in <module>
class BidListing(forms.ModelForm,id):
TypeError: metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases
PS C:\Users\ycemalunlu\Desktop\commerce> 

Models.py

class Bid(models.Model):
    listing = models.ForeignKey(Listing, on_delete=models.CASCADE, related_name="listing_bids")
    user = models.ForeignKey(User, on_delete=models.CASCADE, related_name="user_bids")
    bid = models.DecimalField(max_digits=22, decimal_places=2)

    class Meta:
        ordering = ('-bid',)

    def __str__(self):
        return f"£{self.bid} bid made for {self.listing.title} by {self.user.username}"

Forms.py

class Minval():
    def getminv(id):
        listing = Listing.objects.get(id=id)
        minv = listing.listing_bids.first().bid
        return minv


class BidListing(forms.ModelForm,id):
    class Meta:
        minval = Minval.getminv(id)
        model = Bid
        fields = ('bid',)
        labels = {'bid': '',}
        widgets = {'bid': forms.NumberInput(attrs={'min':minval}) }

Views.py

def listing(request, id):
    return render(request, "auctions/listing.html", { 
    "bid_listing": BidListing(id),
    })
class BidListing(forms.ModelForm,id):
    
    def __init__(self, *args, **kwargs):
        self.id = kwargs.pop("id")
        super(BidListing, self).__init__(*args, **kwargs)
         // ur logic

и в поле зрения

def listing(request, id):
    if request.method == 'POST':
    form = BidListing(data=request.POST, id=id)
    ...
else:
    # GET request
    form = BidListing(id=id)
Вернуться на верх