From: Michael Wood Date: Thu, 21 Jul 2016 13:43:31 +0000 (+0100) Subject: bitbake: toaster: admin Add Layer_Version to the admin-able models X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=04d1ad5fe7f5029a5b46a10ef18f7f335c17474b;p=thirdparty%2Fopenembedded%2Fopenembedded-core-contrib.git bitbake: toaster: admin Add Layer_Version to the admin-able models If the migration didn't get the release conversion right for say, a local or imported layer it would be handy to be able to edit this in the django admin page. Also useful for developers to be able to tweak layers on the fly. (Bitbake rev: 0b23b6919ef1162a0c7fb5b5a961a24653c51eb2) Signed-off-by: Michael Wood Signed-off-by: Elliot Smith Signed-off-by: Richard Purdie --- diff --git a/bitbake/lib/toaster/bldcollector/admin.py b/bitbake/lib/toaster/bldcollector/admin.py index 7b69ecd09e7..1f2e07f50bf 100644 --- a/bitbake/lib/toaster/bldcollector/admin.py +++ b/bitbake/lib/toaster/bldcollector/admin.py @@ -1,29 +1,33 @@ from django.contrib import admin -from django.contrib.admin.filters import RelatedFieldListFilter -from orm.models import BitbakeVersion, Release, ToasterSetting -from django.forms.widgets import Textarea +from orm.models import BitbakeVersion, Release, ToasterSetting, Layer_Version from django import forms import django.db.models as models -from django.contrib.admin import widgets, helpers class BitbakeVersionAdmin(admin.ModelAdmin): - # we override the formfield for db URLField because of broken URL validation + # we override the formfield for db URLField + # because of broken URL validation def formfield_for_dbfield(self, db_field, **kwargs): if isinstance(db_field, models.fields.URLField): return forms.fields.CharField() - return super(BitbakeVersionAdmin, self).formfield_for_dbfield(db_field, **kwargs) - + return super(BitbakeVersionAdmin, self).formfield_for_dbfield( + db_field, **kwargs) class ReleaseAdmin(admin.ModelAdmin): pass + class ToasterSettingAdmin(admin.ModelAdmin): pass + +class LayerVersionsAdmin(admin.ModelAdmin): + pass + +admin.site.register(Layer_Version, LayerVersionsAdmin) admin.site.register(BitbakeVersion, BitbakeVersionAdmin) admin.site.register(Release, ReleaseAdmin) admin.site.register(ToasterSetting, ToasterSettingAdmin) diff --git a/bitbake/lib/toaster/orm/models.py b/bitbake/lib/toaster/orm/models.py index 72b9dfeaa8a..caacc2a5442 100644 --- a/bitbake/lib/toaster/orm/models.py +++ b/bitbake/lib/toaster/orm/models.py @@ -1252,6 +1252,9 @@ class Release(models.Model): def __unicode__(self): return "%s (%s)" % (self.name, self.branch_name) + def __str__(self): + return self.name + class ReleaseDefaultLayer(models.Model): release = models.ForeignKey(Release) layer_name = models.CharField(max_length=100, default="") @@ -1419,6 +1422,14 @@ class Layer_Version(models.Model): def __unicode__(self): return ("id %d belongs to layer: %s" % (self.pk, self.layer.name)) + def __str__(self): + if self.release: + release = self.release.name + else: + release = "No release set" + + return "%d %s (%s)" % (self.pk, self.layer.name, release) + class LayerVersionDependency(models.Model):