wip passing domain from view to form

This commit is contained in:
Rachid Mrad 2023-10-19 13:24:35 -04:00
parent b4596d3bcd
commit d48312f74b
No known key found for this signature in database
GPG key ID: EF38E4CEC4A8F3CF
2 changed files with 17 additions and 17 deletions

View file

@ -60,9 +60,8 @@ class DomainNameserverForm(forms.Form):
def __init__(self, *args, **kwargs):
# Access the context object passed to the form
print(f"domain domain domain {kwargs}")
self.domain = kwargs.pop('rachid', None)
print(f"domain domain domain {kwargs}")
print(f"kwargs in __init__ {kwargs}")
self.domain = kwargs.pop('domain', None)
super().__init__(*args, **kwargs)
# def __init__(self, request, *args, **kwargs):
@ -78,27 +77,20 @@ class DomainNameserverForm(forms.Form):
# make sure there's a nameserver if an ip is passed
if ip:
ip_list = [ip.strip() for ip in ip.split(",")]
if not server:
if len(server) < len(ip_list):
# If 'server' is empty, disallow 'ip' input
raise forms.ValidationError("Name server must be provided to enter IP address.")
try:
Domain.checkHostIPCombo(server, ip_list)
except NameserverError as e:
raise forms.ValidationError(str(e))
# if there's a nameserver, validate nameserver/ip combo
domain, _ = Domain.objects.get_or_create(name="magazine-claim.gov")
# if there's a nameserver and an ip, validate nameserver/ip combo
domain, _ = Domain.objects.get_or_create(name="realize-shake-too.gov")
# Access session data from the request object
# session_data = self.request.session.get('nameservers_form_domain', None)
print(f"domain domain domain {self.domain}")
print(f"domain in clean: {self.domain}")
if server:
if ip:
ip_list = [ip.strip() for ip in ip.split(",")]
else:
ip_list = [""]
if server and ip:
ip_list = [ip.strip() for ip in ip.split(",")]
try:
Domain.checkHostIPCombo(domain, server, ip_list)
except NameserverError as e:
@ -110,6 +102,8 @@ class DomainNameserverForm(forms.Form):
NameserverFormset = formset_factory(
DomainNameserverForm,
extra=1,
max_num=13,
validate_max=True,
)

View file

@ -219,11 +219,13 @@ class DomainNameserversView(DomainFormBaseView, BaseFormSet):
template_name = "domain_nameservers.html"
form_class = NameserverFormset
model = Domain
def get_formset_kwargs(self, index):
kwargs = super().get_formset_kwargs(index)
# kwargs['domain'] = self.object # Pass the context data
kwargs.update({"domain", self.object})
print(f"kwargs in get_formset_kwargs {kwargs}")
return kwargs
def get_initial(self):
@ -254,8 +256,12 @@ class DomainNameserversView(DomainFormBaseView, BaseFormSet):
def get_form(self, **kwargs):
"""Override the labels and required fields every time we get a formset."""
formset = super().get_form(**kwargs)
# kwargs.update({"domain", self.object})
formset = super().get_form(**kwargs)
for i, form in enumerate(formset):
# form = self.get_form(self, **kwargs)
form.fields["server"].label += f" {i+1}"
form.fields["ip"].label += f" {i+1}"
if i < 2: