mirror of
https://github.com/ansible/awx.git
synced 2026-01-11 10:00:01 -03:30
Might help to add the forms for the admin to import.
This commit is contained in:
parent
b9da59c5f3
commit
6567e6ac10
47
lib/main/forms.py
Normal file
47
lib/main/forms.py
Normal file
@ -0,0 +1,47 @@
|
||||
import json
|
||||
from django import forms
|
||||
from django.utils.translation import ugettext_lazy as _
|
||||
from jsonfield.fields import JSONFormField
|
||||
from lib.main.models import *
|
||||
|
||||
class HostAdminForm(forms.ModelForm):
|
||||
|
||||
class Meta:
|
||||
model = Host
|
||||
|
||||
vdata = JSONFormField(label=_('Variable data'), required=False, widget=forms.Textarea(attrs={'class': 'vLargeTextField'}))
|
||||
|
||||
def __init__(self, *args, **kwargs):
|
||||
super(HostAdminForm, self).__init__(*args, **kwargs)
|
||||
if self.instance.variable_data:
|
||||
print repr(self.instance.variable_data.data)
|
||||
self.initial['vdata'] = self.instance.variable_data.data
|
||||
|
||||
def save(self, commit=True):
|
||||
instance = super(HostAdminForm, self).save(commit=commit)
|
||||
save_m2m = getattr(self, 'save_m2m', lambda: None)
|
||||
vdata = self.cleaned_data.get('vdata', '')
|
||||
print 'vdata', repr(vdata)
|
||||
def new_save_m2m():
|
||||
save_m2m()
|
||||
if not instance.variable_data:
|
||||
instance.variable_data = VariableData.objects.create(data=vdata)
|
||||
instance.save()
|
||||
else:
|
||||
variable_data = instance.variable_data
|
||||
# FIXME!!!
|
||||
#variable_data.data = vdata
|
||||
#variable_data.save()
|
||||
if commit:
|
||||
new_save_m2m()
|
||||
else:
|
||||
self.save_m2m = new_save_m2m
|
||||
return instance
|
||||
|
||||
class GroupForm(forms.ModelForm):
|
||||
|
||||
class Meta:
|
||||
model = Host
|
||||
|
||||
variable_data = JSONFormField(required=False, widget=forms.Textarea(attrs={'class': 'vLargeTextField'}))
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user