django form: Passar parâmetro de view.py para forms gera erro
Newbie pergunta: eu preciso aceitar um parâmetro em um formulário a partir de um método em views.py, mas isso me deu problemas. Na exibição, criei um método com o seguinte trecho:
def scan_page(request):
myClient = request.user.get_profile().client
form = WirelessScanForm(client = myClient) # pass parameter to the form
e no forms.py eu defini o seguinte formulário:
class WirelessScanForm(forms.ModelForm):
time = forms.DateTimeField(label="Schedule Time", widget=AdminSplitDateTime())
def __init__(self,*args,**kwargs):
myClient = kwargs.pop("client") # client is the parameter passed from views.py
super(WirelessScanForm, self).__init__(*args,**kwargs)
prob = forms.ChoiceField(label="Sniffer", choices=[ x.sniffer.plug_ip for x in Sniffer.objects.filter(client = myClient) ])
Mas o django continua me dando erro dizendo:TemplateSyntaxError: Caught NameError while rendering: name 'myClient' is not defined
(Este erro ocorre na consulta)
Receio que algo estúpido esteja faltando aqui, mas não consigo entender por quê. Por favor ajude, obrigado.