I am trying to upgrade from Django 1.7.1 to 1.8 to my dev env. It seems that I have a problem with one of my models, I think the main file has been updated and confused with my model. I can't seem to understand what makes him die.
This is the only error I get when I try to run the manage.py test
CommandError: System check identified some issues: ERRORS: graphite_alerts.CheckResults: (models.E020) The 'CheckResults.check()' class method is currently overridden by <django.db.models.fields.related.ReverseSingleRelatedObjectDescriptor object at 0x3a76310>.
I tried changing the class name and looked around my model and did not seem to find anything that could cause an override error
This is the class:
class CheckResults(models.Model): WARN = 'warn' ERROR = 'error' OK = 'ok' DOWN = 'down' STATUS_CHOICES = ( (WARN, 'Warn'), (ERROR, 'Error'), (OK, 'OK'), (DOWN, 'Down'), ) target = models.CharField(max_length=1000) additional_graph_target = models.CharField(max_length=1000, blank=True) value = models.DecimalField(max_digits=9, decimal_places=2) timestamp = models.DateTimeField(db_index=True) status = models.CharField(max_length=6, choices=STATUS_CHOICES, default='ok') check = models.ForeignKey(Check, related_name='results') tags = TaggableManager() def __unicode__(self): return self.target @models.permalink def get_absolute_url(self): return ('graphite-check-result-list-view', (), {'pk': self.check.pk, 'target': self.target}) def generate_graphite_image_url(self): params = { } params['target'] = [] params['target'].append(self.target) params['target'].append('threshold(' + str(self.check.warn) + ',"Warn","yellow")') params['target'].append('threshold(' + str(self.check.error) + ',"Error","red")') params['from'] = '-7days' params['width'] = '900' params['minorGridLineColor'] = 'C0C0C0' params['majorGridLineColor'] = 'C0C0C0' params['bgcolor'] = '333333' request = requests.get(self.check.GRAPHITE_URL+self.check.RENDER_PAGE,params=params) return urllib2.unquote(request.url.decode('UTF-8')) def generate_additional_graphite_image_url(self): params = { } params['target'] = [] params['target'].append(self.additional_graph_target) params['target'].append('threshold(' + str(self.check.warn) + ',"Warn","yellow")') params['target'].append('threshold(' + str(self.check.error) + ',"Error","red")') params['from'] = '-7days' params['width'] = '900' params['minorGridLineColor'] = 'C0C0C0' params['majorGridLineColor'] = 'C0C0C0' params['bgcolor'] = '333333' request = requests.get(self.check.GRAPHITE_URL+self.check.RENDER_PAGE,params=params) return urllib2.unquote(request.url.decode('UTF-8')) class Meta: ordering = ("timestamp",) unique_together = (("target", "timestamp"),)