def __call__(self, request, *args, **kwargs): whitelist = self.obj_from_request(request, *args, **kwargs) strategy = WhitelistMiddleware().get_strategy() current_ip = strategy.get_ip_from_request(request) form_args = (current_ip, whitelist) form_kwargs = {} if hasattr(self, 'range_form_class'): form_kwargs = {'range_form_class': self.range_form_class} if request.method == 'POST': form_args += (request.POST,) form = self.form_class(*form_args, **form_kwargs) if form.is_valid(): self.save_form(request, form, *args, **kwargs) return HttpResponseRedirect('.') return self.respond(request, form, whitelist, *args, **kwargs)