##// END OF EJS Templates
- Fix input form for delays in RCLine...
- Fix input form for delays in RCLine - Fix update pulses git-svn-id: http://jro-dev.igp.gob.pe/svn/jro_hard/radarsys/trunk/webapp@140 aa17d016-51d5-4e8b-934c-7b2bbb1bbe71

File last commit:

r110:603e3d27e4c9
r119:a764d9ef7917
Show More
models.py
578 lines | 19.3 KiB | text/x-python | PythonLexer
Fiorella Quino
Export Campaign ...
r100 from django.shortcuts import render, redirect, get_object_or_404, HttpResponse
Juan C. Espinoza
Update several views and models in main app...
r85 from datetime import datetime
Juan C. Espinoza
Proyecto base en Django (refs #259) ...
r0 from django.db import models
Juan C. Espinoza
Updating base models and views ...
r6 from polymorphic import PolymorphicModel
Juan C. Espinoza
Proyecto base en Django (refs #259) ...
r0
Miguel Urco
DDS app updated...
r32 from django.core.urlresolvers import reverse
Fiorella Quino
Import Experiment Function...
r108
Miguel Urco
Location model added to RadarSys...
r41 CONF_STATES = (
Miguel Urco
template attribute added to RadarSys Models...
r47 (0, 'Disconnected'),
(1, 'Connected'),
Fiorella Quino
Main Models...
r72 (2, 'Running'),
)
EXP_STATES = (
Fiorella Quino
Task #487: Operation. Views: radar_play y radar_stop. Models: RunningExperiment. Attributes: status. Methods: get_status(), status_color()...
r84 (0,'Error'), #RED
(1,'Configurated'), #BLUE
(2,'Running'), #GREEN
(3,'Waiting'), #YELLOW
(4,'Not Configured'), #WHITE
Miguel Urco
template attribute added to RadarSys Models...
r47 )
Miguel Urco
Location model added to RadarSys...
r41
Miguel Urco
Configuration model changed: status and date fields were replaced by type and created fields....
r21 CONF_TYPES = (
Miguel Urco
template attribute added to RadarSys Models...
r47 (0, 'Active'),
(1, 'Historical'),
)
Miguel Urco
status field added to Device and DevConfiguration model...
r16
DEV_STATES = (
Miguel Urco
template attribute added to RadarSys Models...
r47 (0, 'No connected'),
(1, 'Connected'),
(2, 'Configured'),
(3, 'Running'),
)
Juan C. Espinoza
Actualizacion de templates y modelos base #263...
r2
Miguel Urco
Campaign has been added to RadarSys Model...
r13 DEV_TYPES = (
Miguel Urco
template attribute added to RadarSys Models...
r47 ('', 'Select a device type'),
('rc', 'Radar Controller'),
Juan C. Espinoza
Update main app (view to mix RC configurations)...
r106 ('rc_mix', 'Radar Controller (Mix)'),
Miguel Urco
template attribute added to RadarSys Models...
r47 ('dds', 'Direct Digital Synthesizer'),
('jars', 'Jicamarca Radar Acquisition System'),
('usrp', 'Universal Software Radio Peripheral'),
('cgs', 'Clock Generator System'),
('abs', 'Automatic Beam Switching'),
)
DEV_PORTS = {
'rc' : 2000,
Juan C. Espinoza
Update main app (view to mix RC configurations)...
r106 'rc_mix': 2000,
Miguel Urco
template attribute added to RadarSys Models...
r47 'dds' : 2000,
'jars' : 2000,
'usrp' : 2000,
'cgs' : 8080,
'abs' : 8080
}
Juan C. Espinoza
Actualizacion de templates y modelos base #263...
r2
Fiorella Quino
Se agrego tabla "Radar" y Estados del Radar...
r49 RADAR_STATES = (
(0, 'No connected'),
Fiorella Quino
Task #487: Operation. Views: radar_play y radar_stop. Models: RunningExperiment. Attributes: status. Methods: get_status(), status_color()...
r84 (1, 'Connected'),
Fiorella Quino
Se agrego tabla "Radar" y Estados del Radar...
r49 (2, 'Configured'),
(3, 'Running'),
(4, 'Scheduled'),
)
Miguel Urco
Campaign has been added to RadarSys Model...
r13 # Create your models here.
Miguel Urco
Models changed:...
r53
class Location(models.Model):
name = models.CharField(max_length = 30)
description = models.TextField(blank=True, null=True)
class Meta:
db_table = 'db_location'
def __unicode__(self):
return u'%s' % self.name
Juan C. Espinoza
Update views and templates of main app...
r89 def get_absolute_url(self):
return reverse('url_device', args=[str(self.id)])
Juan C. Espinoza
Actualizacion de templates y modelos base #263...
r2 class DeviceType(models.Model):
Miguel Urco
Campaign has been added to RadarSys Model...
r13 name = models.CharField(max_length = 10, choices = DEV_TYPES, default = 'rc')
description = models.TextField(blank=True, null=True)
Juan C. Espinoza
Actualizacion de templates y modelos base #263...
r2
class Meta:
Miguel Urco
Campaign has been added to RadarSys Model...
r13 db_table = 'db_device_types'
Juan C. Espinoza
Actualizacion de templates y modelos base #263...
r2
def __unicode__(self):
Miguel Urco
models are passed as instances to templates (dictionaries are not used anymore)...
r22 return u'%s' % self.get_name_display()
Juan C. Espinoza
Actualizacion de templates y modelos base #263...
r2
class Device(models.Model):
Miguel Urco
Models changed:...
r53 device_type = models.ForeignKey(DeviceType, on_delete=models.CASCADE)
location = models.ForeignKey(Location, on_delete=models.CASCADE)
Miguel Urco
Location model added to RadarSys...
r41
Miguel Urco
Device model changed: ...
r9 name = models.CharField(max_length=40, default='')
Juan C. Espinoza
Updating base models and views ...
r6 ip_address = models.GenericIPAddressField(protocol='IPv4', default='0.0.0.0')
Miguel Urco
Campaign has been added to RadarSys Model...
r13 port_address = models.PositiveSmallIntegerField(default=2000)
Miguel Urco
Device model changed: ...
r9 description = models.TextField(blank=True, null=True)
Miguel Urco
status field added to Device and DevConfiguration model...
r16 status = models.PositiveSmallIntegerField(default=0, choices=DEV_STATES)
Juan C. Espinoza
Actualizacion de templates y modelos base #263...
r2
class Meta:
Miguel Urco
Campaign has been added to RadarSys Model...
r13 db_table = 'db_devices'
Juan C. Espinoza
Actualizacion de templates y modelos base #263...
r2
def __unicode__(self):
Miguel Urco
models are passed as instances to templates (dictionaries are not used anymore)...
r22 return u'%s | %s' % (self.name, self.ip_address)
Miguel Urco
template attribute added to RadarSys Models...
r47
Juan C. Espinoza
Update views and templates of main app...
r89 def get_status(self):
Miguel Urco
template attribute added to RadarSys Models...
r47 return self.status
Juan C. Espinoza
Update views and templates of main app...
r89 def get_absolute_url(self):
return reverse('url_device', args=[str(self.id)])
Miguel Urco
Campaign has been added to RadarSys Model...
r13
class Campaign(models.Model):
Juan C. Espinoza
Update several views and models in main app...
r85 template = models.BooleanField(default=False)
name = models.CharField(max_length=60, unique=True)
Miguel Urco
Campaign has been added to RadarSys Model...
r13 start_date = models.DateTimeField(blank=True, null=True)
end_date = models.DateTimeField(blank=True, null=True)
tags = models.CharField(max_length=40)
description = models.TextField(blank=True, null=True)
Juan C. Espinoza
Update several views and models in main app...
r85 experiments = models.ManyToManyField('Experiment', blank=True)
Miguel Urco
Campaign has been added to RadarSys Model...
r13
class Meta:
db_table = 'db_campaigns'
Juan C. Espinoza
Update several views and models in main app...
r85 ordering = ('name',)
Miguel Urco
Campaign has been added to RadarSys Model...
r13
def __unicode__(self):
Miguel Urco
models are passed as instances to templates (dictionaries are not used anymore)...
r22 return u'%s' % (self.name)
Fiorella Quino
Main Models...
r72
Juan C. Espinoza
Update views and templates of main app...
r89 def get_absolute_url(self):
return reverse('url_campaign', args=[str(self.id)])
Fiorella Quino
Export Campaign ...
r100 def parms_to_dict(self):
import json
parameters = {}
Fiorella Quino
Export Campaign. parms_to_dict() (mmain.models)...
r102 exp_parameters = {}
experiments = Experiment.objects.filter(campaign = self)
Fiorella Quino
Export Campaign ...
r100
Fiorella Quino
Export Campaign. parms_to_dict() (mmain.models)...
r102 i=1
for experiment in experiments:
exp_parameters['experiment-'+str(i)] = json.loads(experiment.parms_to_dict())
i += 1
Fiorella Quino
Export Campaign ...
r100
Fiorella Quino
Export Campaign. parms_to_dict() (mmain.models)...
r103
Fiorella Quino
Import Experiment Function...
r108 parameters['experiments'] = exp_parameters
parameters['end_date'] = self.end_date.strftime("%Y-%m-%d")
parameters['start_date'] = self.start_date.strftime("%Y-%m-%d")
parameters['campaign'] = self.__unicode__()
parameters['tags'] =self.tags
Fiorella Quino
Export Campaign. parms_to_dict() (mmain.models)...
r103
parameters = json.dumps(parameters, indent=2, sort_keys=False)
Fiorella Quino
Export Campaign ...
r100
return parameters
Fiorella Quino
Import Experiment Function...
r108 def import_from_file(self, fp):
import os, json
parms = {}
path, ext = os.path.splitext(fp.name)
if ext == '.json':
parms = json.load(fp)
return parms
Fiorella Quino
Import Campaign: dict_to_parms(self, parms, CONF_MODELS)(models.py), campaign_import (views.py)...
r109 def dict_to_parms(self, parms, CONF_MODELS):
experiments = Experiment.objects.filter(campaign = self)
configurations = Configuration.objects.filter(experiment = experiments)
if configurations:
for configuration in configurations:
configuration.delete()
if experiments:
for experiment in experiments:
experiment.delete()
for parms_exp in parms['experiments']:
location = Location.objects.get(name = parms['experiments'][parms_exp]['radar'])
new_exp = Experiment(
name = parms['experiments'][parms_exp]['experiment'],
location = location,
start_time = parms['experiments'][parms_exp]['start_time'],
end_time = parms['experiments'][parms_exp]['end_time'],
)
new_exp.save()
new_exp.dict_to_parms(parms['experiments'][parms_exp],CONF_MODELS)
new_exp.save()
Fiorella Quino
Import Campaign...
r110 self.name = parms['campaign']
self.start_date = parms['start_date']
self.end_date = parms['end_date']
self.tags = parms['tags']
Fiorella Quino
Import Campaign: dict_to_parms(self, parms, CONF_MODELS)(models.py), campaign_import (views.py)...
r109 self.experiments.add(new_exp)
Fiorella Quino
Import Campaign...
r110 self.save()
return self
Fiorella Quino
Import Campaign: dict_to_parms(self, parms, CONF_MODELS)(models.py), campaign_import (views.py)...
r109
Fiorella Quino
Import Experiment Function...
r108 def get_absolute_url(self):
return reverse('url_campaign', args=[str(self.id)])
def get_absolute_url_edit(self):
return reverse('url_edit_campaign', args=[str(self.id)])
Fiorella Quino
Export Campaign ...
r100 def get_absolute_url_export(self):
return reverse('url_export_campaign', args=[str(self.id)])
Fiorella Quino
Import Experiment Function...
r108 def get_absolute_url_import(self):
return reverse('url_import_campaign', args=[str(self.id)])
Fiorella Quino
Export Campaign ...
r100
Juan C. Espinoza
Update several views and models in main app...
r85
Fiorella Quino
Task #487: Operation. Views: radar_play y radar_stop. Models: RunningExperiment. Attributes: status. Methods: get_status(), status_color()...
r84 class RunningExperiment(models.Model):
radar = models.OneToOneField('Location', on_delete=models.CASCADE)
Fiorella Quino
Task # 487: Operation View: radar_play...
r92 running_experiment = models.ManyToManyField('Experiment', blank = True)
Fiorella Quino
Task #487: Operation. Views: radar_play y radar_stop. Models: RunningExperiment. Attributes: status. Methods: get_status(), status_color()...
r84 status = models.PositiveSmallIntegerField(default=0, choices=RADAR_STATES)
Fiorella Quino
A "Campaign" has many "Locations", A "Location" has many Experiments....
r48
Fiorella Quino
Se agrego tabla "Radar" y Estados del Radar...
r49
Juan C. Espinoza
Actualizacion de templates y modelos base #263...
r2 class Experiment(models.Model):
Juan C. Espinoza
Update several views and models in main app...
r85 template = models.BooleanField(default=False)
name = models.CharField(max_length=40, default='', unique=True)
Miguel Urco
Models changed:...
r53 location = models.ForeignKey('Location', null=True, blank=True, on_delete=models.CASCADE)
Miguel Urco
Campaign has been added to RadarSys Model...
r13 start_time = models.TimeField(default='00:00:00')
end_time = models.TimeField(default='23:59:59')
Fiorella Quino
Task #487: Operation. Views: radar_play y radar_stop. Models: RunningExperiment. Attributes: status. Methods: get_status(), status_color()...
r84 status = models.PositiveSmallIntegerField(default=0, choices=EXP_STATES)
Juan C. Espinoza
Actualizacion de templates y modelos base #263...
r2
class Meta:
Miguel Urco
Campaign has been added to RadarSys Model...
r13 db_table = 'db_experiments'
Juan C. Espinoza
Update new and edit "views"...
r91 ordering = ('template', 'name')
Juan C. Espinoza
Actualizacion de templates y modelos base #263...
r2
def __unicode__(self):
Juan C. Espinoza
Update new and edit "views"...
r91 if self.template:
return u'%s (template)' % (self.name)
else:
return u'%s' % (self.name)
Juan C. Espinoza
Updating base models and views ...
r6
Juan C. Espinoza
Update views and templates of main app...
r89 @property
def radar(self):
return self.location
Juan C. Espinoza
Update several views and models in main app...
r85 def clone(self, **kwargs):
confs = Configuration.objects.filter(experiment=self, type=0)
self.pk = None
self.name = '{} [{:%Y/%m/%d}]'.format(self.name, datetime.now())
for attr, value in kwargs.items():
setattr(self, attr, value)
self.save()
for conf in confs:
conf.clone(experiment=self, template=False)
return self
Fiorella Quino
Task #487: Operation. Views: radar_play y radar_stop. Models: RunningExperiment. Attributes: status. Methods: get_status(), status_color()...
r84
def get_status(self):
configurations = Configuration.objects.filter(experiment=self)
exp_status=[]
for conf in configurations:
print conf.status_device()
exp_status.append(conf.status_device())
if not exp_status: #No Configuration
self.status = 4
self.save()
return
total = 1
for e_s in exp_status:
total = total*e_s
if total == 0: #Error
status = 0
elif total == (3**len(exp_status)): #Running
status = 2
else:
status = 1 #Configurated
self.status = status
self.save()
def status_color(self):
color = 'danger'
if self.status == 0:
color = "danger"
elif self.status == 1:
color = "info"
elif self.status == 2:
Juan C. Espinoza
Update new and edit "views"...
r91 color = "success"
Fiorella Quino
Task #487: Operation. Views: radar_play y radar_stop. Models: RunningExperiment. Attributes: status. Methods: get_status(), status_color()...
r84 elif self.status == 3:
color = "warning"
else:
color = "muted"
return color
Juan C. Espinoza
Update views and templates of main app...
r89 def get_absolute_url(self):
return reverse('url_experiment', args=[str(self.id)])
Fiorella Quino
Export Campaign ...
r100 def parms_to_dict(self):
import json
configurations = Configuration.objects.filter(experiment=self)
conf_parameters = {}
parameters={}
for configuration in configurations:
if 'cgs' in configuration.device.device_type.name:
conf_parameters['cgs'] = configuration.parms_to_dict()
if 'dds' in configuration.device.device_type.name:
conf_parameters['dds'] = configuration.parms_to_dict()
if 'rc' in configuration.device.device_type.name:
conf_parameters['rc'] = configuration.parms_to_dict()
if 'jars' in configuration.device.device_type.name:
conf_parameters['jars'] = configuration.parms_to_dict()
if 'usrp' in configuration.device.device_type.name:
conf_parameters['usrp'] = configuration.parms_to_dict()
if 'abs' in configuration.device.device_type.name:
conf_parameters['abs'] = configuration.parms_to_dict()
parameters['configurations'] = conf_parameters
Fiorella Quino
Import Experiment Function...
r108 parameters['end_time'] = self.end_time.strftime("%H:%M:%S")
parameters['start_time'] = self.start_time.strftime("%H:%M:%S")
parameters['radar'] = self.radar.name
parameters['experiment'] = self.name
Fiorella Quino
Export Campaign ...
r100 parameters = json.dumps(parameters, indent=2)
return parameters
Fiorella Quino
Import Experiment Function...
r108 def import_from_file(self, fp):
import os, json
parms = {}
path, ext = os.path.splitext(fp.name)
if ext == '.json':
parms = json.load(fp)
return parms
def dict_to_parms(self, parms, CONF_MODELS):
configurations = Configuration.objects.filter(experiment=self)
if configurations:
for configuration in configurations:
configuration.delete()
for conf_type in parms['configurations']:
#--For ABS Device:
#--For USRP Device:
#--For JARS Device:
#--For RC Device:
if conf_type == 'rc':
device = get_object_or_404(Device, pk=parms['configurations']['rc']['device_id'])
DevConfModel = CONF_MODELS[conf_type]
confrc_form = DevConfModel(
experiment = self,
name = 'RC',
device=device,
)
confrc_form.dict_to_parms(parms['configurations']['rc'])
confrc_form.save()
#--For DDS Device:
if conf_type == 'dds':
device = get_object_or_404(Device, pk=parms['configurations']['dds']['device_id'])
DevConfModel = CONF_MODELS[conf_type]
confdds_form = DevConfModel(
experiment = self,
name = 'DDS',
device=device,
)
confdds_form.dict_to_parms(parms['configurations']['dds'])
confdds_form.save()
#--For CGS Device:
if conf_type == 'cgs':
device = get_object_or_404(Device, pk=parms['configurations']['cgs']['device_id'])
DevConfModel = CONF_MODELS[conf_type]
confcgs_form = DevConfModel(
experiment = self,
name = 'CGS',
device=device,
)
confcgs_form.dict_to_parms(parms['configurations']['cgs'])
confcgs_form.save()
Fiorella Quino
Import Campaign...
r110
location = Location.objects.get(name = parms['radar'])
self.name = parms['experiment']
self.location = location
self.start_time = parms['start_time']
self.end_time = parms['end_time']
self.save()
return self
Fiorella Quino
Import Experiment Function...
r108
def get_absolute_url_edit(self):
return reverse('url_edit_experiment', args=[str(self.id)])
def get_absolute_url_import(self):
return reverse('url_import_experiment', args=[str(self.id)])
Fiorella Quino
Export Campaign ...
r100 def get_absolute_url_export(self):
return reverse('url_export_experiment', args=[str(self.id)])
Juan C. Espinoza
Update several views and models in main app...
r85
Juan C. Espinoza
Updating base models and views ...
r6 class Configuration(PolymorphicModel):
Juan C. Espinoza
Actualizacion de templates y modelos base #263...
r2
Miguel Urco
template attribute added to RadarSys Models...
r47 template = models.BooleanField(default=False)
name = models.CharField(verbose_name="Configuration Name", max_length=40, default='')
Miguel Urco
Models changed:...
r53 experiment = models.ForeignKey('Experiment', null=True, blank=True, on_delete=models.CASCADE)
Juan C. Espinoza
Update main app (view to mix RC configurations)...
r106 device = models.ForeignKey(Device, null=True, on_delete=models.CASCADE)
Miguel Urco
Location model added to RadarSys...
r41
Miguel Urco
Configuration model changed: status and date fields were replaced by type and created fields....
r21 type = models.PositiveSmallIntegerField(default=0, choices=CONF_TYPES)
Miguel Urco
status field added to Device and DevConfiguration model...
r16
Miguel Urco
models are passed as instances to templates (dictionaries are not used anymore)...
r22 created_date = models.DateTimeField(auto_now_add=True)
programmed_date = models.DateTimeField(auto_now=True)
parameters = models.TextField(default='{}')
Miguel Urco
Models changed:...
r53 message = ""
Juan C. Espinoza
Actualizacion de templates y modelos base #263...
r2 class Meta:
Miguel Urco
Campaign has been added to RadarSys Model...
r13 db_table = 'db_configurations'
Juan C. Espinoza
Actualizacion de templates y modelos base #263...
r2
def __unicode__(self):
Juan C. Espinoza
Update main app (view to mix RC configurations)...
r106
return u'[%s]: %s' % (self.device.name, self.name)
Juan C. Espinoza
- Update rc app...
r79
Juan C. Espinoza
Update several views and models in main app...
r85 def clone(self, **kwargs):
Juan C. Espinoza
- Update rc app...
r79
Juan C. Espinoza
Update several views and models in main app...
r85 self.pk = None
self.id = None
for attr, value in kwargs.items():
setattr(self, attr, value)
self.save()
return self
Miguel Urco
Models changed:...
r53
def parms_to_dict(self):
parameters = {}
for key in self.__dict__.keys():
parameters[key] = getattr(self, key)
return parameters
Miguel Urco
DDS commands working...
r57 def parms_to_text(self):
raise NotImplementedError, "This method should be implemented in %s Configuration model" %str(self.device.device_type.name).upper()
return ''
def parms_to_binary(self):
raise NotImplementedError, "This method should be implemented in %s Configuration model" %str(self.device.device_type.name).upper()
return ''
Miguel Urco
Models changed:...
r53 def dict_to_parms(self, parameters):
if type(parameters) != type({}):
return
for key in parameters.keys():
setattr(self, key, parameters[key])
def export_to_file(self, format="json"):
import json
Miguel Urco
DDS app updated...
r32
Miguel Urco
DDS commands working...
r57 content_type = ''
Miguel Urco
Models changed:...
r53
if format == 'text':
content_type = 'text/plain'
Miguel Urco
DDS commands working...
r57 filename = '%s_%s.%s' %(self.device.device_type.name, self.name, self.device.device_type.name)
content = self.parms_to_text()
Miguel Urco
Models changed:...
r53
if format == 'binary':
content_type = 'application/octet-stream'
Miguel Urco
DDS commands working...
r57 filename = '%s_%s.bin' %(self.device.device_type.name, self.name)
content = self.parms_to_binary()
if not content_type:
content_type = 'application/json'
filename = '%s_%s.json' %(self.device.device_type.name, self.name)
Juan C. Espinoza
- Update rc app...
r79 content = json.dumps(self.parms_to_dict(), indent=2)
Miguel Urco
Models changed:...
r53
fields = {'content_type':content_type,
'filename':filename,
'content':content
}
return fields
Miguel Urco
DDS commands working...
r57 def import_from_file(self, fp):
import os, json
parms = {}
path, ext = os.path.splitext(fp.name)
Miguel Urco
Models changed:...
r53
Miguel Urco
DDS commands working...
r57 if ext == '.json':
parms = json.load(fp)
Miguel Urco
Models changed:...
r53
Miguel Urco
DDS commands working...
r57 return parms
Miguel Urco
Models changed:...
r53
def status_device(self):
Miguel Urco
DDS commands working...
r57 raise NotImplementedError, "This method should be implemented in %s Configuration model" %str(self.device.device_type.name).upper()
Miguel Urco
Models changed:...
r53
return None
def stop_device(self):
Miguel Urco
DDS commands working...
r57 raise NotImplementedError, "This method should be implemented in %s Configuration model" %str(self.device.device_type.name).upper()
Miguel Urco
Models changed:...
r53
return None
def start_device(self):
Miguel Urco
DDS commands working...
r57 raise NotImplementedError, "This method should be implemented in %s Configuration model" %str(self.device.device_type.name).upper()
Miguel Urco
Models changed:...
r53
return None
def write_device(self, parms):
Miguel Urco
DDS commands working...
r57 raise NotImplementedError, "This method should be implemented in %s Configuration model" %str(self.device.device_type.name).upper()
Miguel Urco
Models changed:...
r53
return None
def read_device(self):
Miguel Urco
DDS commands working...
r57 raise NotImplementedError, "This method should be implemented in %s Configuration model" %str(self.device.device_type.name).upper()
Miguel Urco
Models changed:...
r53
return None
Miguel Urco
template attribute added to RadarSys Models...
r47 def get_absolute_url(self):
Juan C. Espinoza
Add rc config mods...
r23 return reverse('url_%s_conf' % self.device.device_type.name, args=[str(self.id)])
Miguel Urco
Buttons "Import", "Export, "Read" and "Write" added to Configuration View...
r30
def get_absolute_url_edit(self):
return reverse('url_edit_%s_conf' % self.device.device_type.name, args=[str(self.id)])
def get_absolute_url_import(self):
Miguel Urco
Models changed:...
r53 return reverse('url_import_dev_conf', args=[str(self.id)])
Miguel Urco
Buttons "Import", "Export, "Read" and "Write" added to Configuration View...
r30
def get_absolute_url_export(self):
Miguel Urco
Models changed:...
r53 return reverse('url_export_dev_conf', args=[str(self.id)])
Miguel Urco
Buttons "Import", "Export, "Read" and "Write" added to Configuration View...
r30
def get_absolute_url_write(self):
Miguel Urco
Models changed:...
r53 return reverse('url_write_dev_conf', args=[str(self.id)])
Miguel Urco
Buttons "Import", "Export, "Read" and "Write" added to Configuration View...
r30
def get_absolute_url_read(self):
Miguel Urco
Models changed:...
r53 return reverse('url_read_dev_conf', args=[str(self.id)])
Fiorella Quino
Se agrego tabla "Radar" y Estados del Radar...
r49
Miguel Urco
Models changed:...
r53 def get_absolute_url_start(self):
return reverse('url_start_dev_conf', args=[str(self.id)])
Fiorella Quino
Se agrego tabla "Radar" y Estados del Radar...
r49
Miguel Urco
Models changed:...
r53 def get_absolute_url_stop(self):
return reverse('url_stop_dev_conf', args=[str(self.id)])
def get_absolute_url_status(self):
return reverse('url_status_dev_conf', args=[str(self.id)])