У меня есть модель со всеми необходимыми полями.
Затем создал вид с такими же полями. Я могу сохранить свои значения из формы успешно.
Теперь я хочу иметь возможность вычислить значение, т.е. network_range, исходя из того, какой network_size был выбран в форме, и сохранить это значение вместе с другими
Используя код netbox, выбранный network_size вычислит диапазон IP-адресов. Этот адрес успешно распечатывается (дублирование). Как мне получить, чтобы сохранить network_range, а также все другие данные в форме. пример, если network_range дает это - 172.16.3.224/28 (я хочу сохранить это в модели)
org = account_form.cleaned_data['org']
acc_id = account_form.cleaned_data['acc_id']
account = account_form.cleaned_data['account']
email = account_form.cleaned_data['email']
network_size = account_form.cleaned_data['network_size']
budget_amount = account_form.cleaned_data['budget_amount']
budget_frequency = account_form.cleaned_data['budget_frequency']
service_level = account_form.cleaned_data['service_level']
account = account_form.save(commit=False)
netbox_conn = pynetbox.api("http://REDACTED","REDACTED")
get_parent_pref = netbox_conn.ipam.prefixes.get(30);print(get_parent_pref)
prefix = netbox_conn.ipam.prefixes.get(prefix=get_parent_pref);print("listpre"+str(prefix))
if network_size == "small":
network_range = prefix.available_prefixes.create({'prefix_length': 28})['prefix'];print(network_range)
elif network_size == "medium":
network_range = prefix.available_prefixes.create({'prefix_length': 25})['prefix'];print(network_range)
elif network_size == "large":
network_range = prefix.available_prefixes.create({'prefix_length': 24})['prefix'];print(network_range)
# account_temp.save()
network_range = ['network_range']
account.save()
return redirect(portal_account)```