from django import forms from pingcap_sso.models import BusinessDownloadLeads from pingcap_sso.utils.requests import get_client_ip, get_client_agent class BusinessDownloadLeadsForm(forms.ModelForm): class Meta: model = BusinessDownloadLeads exclude = ['created_at'] def __init__(self, request, *args, **kwargs): self.request = request return super(BusinessDownloadLeadsForm, self).__init__(*args, **kwargs) def save(self, *args, **kwargs): self.instance.ip = get_client_ip(self.request) self.instance.user_agent = get_client_agent(self.request) return super(BusinessDownloadLeadsForm, self).save(*args, **kwargs)