Je veux envoyer un paramètre de la vue au formulaire avec ce code. Dans la vue, j'appelle le constructeur:
from = FormSet(request.POST or None, prefix="employee", id=id)
L'identifiant a été donné sur l'URL. Dans la forme, je définis le constructeur comme ceci:
class FormSet(SearchForm):
def __init__(self, *args, **kwargs):
try:
id = kwargs.pop("id")
except KeyError:
raise Http404
super(FormSet, self).__init__(*args, **kwargs)
self.fields["employee"] = ModelChoiceField(queryset=Employee.objects.all().filter(id=id))
Et j'ai eu cette erreur:
__init__() got an unexpected keyword argument "id"
Est-ce que quelqu'un connaît le problème?
Réponses:
0 pour la réponse № 1Je l'ai eu une fois aussi, je l'ai résolu en utilisant:
def __init__(self, id=None, *args, **kwargs):