##// END OF EJS Templates
Campaign has been added to RadarSys Model...
Campaign has been added to RadarSys Model git-svn-id: http://jro-dev.igp.gob.pe/svn/jro_hard/radarsys/trunk/webapp@27 aa17d016-51d5-4e8b-934c-7b2bbb1bbe71

File last commit:

r13:6a2dde2f45c9
r13:6a2dde2f45c9
Show More
forms.py
36 lines | 1.6 KiB | text/x-python | PythonLexer
from django import forms
from apps.main.models import Device
from .models import DDSConfiguration
from django.core.validators import MinValueValidator, MaxValueValidator
class DDSConfigurationForm(forms.ModelForm):
frequency = forms.FloatField(label='Frequency (MHz)', validators=[MinValueValidator(0), MaxValueValidator(150)])
phase = forms.FloatField(label='Phase (Degrees)', validators=[MinValueValidator(0), MaxValueValidator(360)])
frequency_mod = forms.FloatField(label='Frequency (MHz)', validators=[MinValueValidator(0), MaxValueValidator(150)], required=False)
phase_mod = forms.FloatField(label='Phase (Degrees)', validators=[MinValueValidator(0), MaxValueValidator(360)], required=False)
def __init__(self, *args, **kwargs):
#request = kwargs.pop('request')
super(DDSConfigurationForm, self).__init__(*args, **kwargs)
instance = getattr(self, 'instance', None)
if instance and instance.pk:
devices = Device.objects.filter(device_type__name='dds')
items = devices.values('id', 'name', 'device_type__name', 'ip_address')
self.fields['experiment'].widget.attrs['readonly'] = True
self.fields['device'].widget.choices = [(item['id'], '[%s]: %s | %s' % (item['device_type__name'], item['name'], item['ip_address'])) for item in items]
def clean(self):
# Custom validation to force an integer when type of unit = "Unit"
return
class Meta:
model = DDSConfiguration
fields = ('experiment', 'device', 'clock', 'multiplier', 'modulation')