Property, PropertyTranslation

This commit is contained in:
Bossanyi Tibor 2020-11-09 15:24:40 +01:00
parent 65e358d0c1
commit 826b1f900d
2 changed files with 53 additions and 1 deletions

View File

@ -2,7 +2,7 @@ from django.contrib import admin
from django.db.models import Sum
from django.utils.html import format_html
from django.utils.translation import ugettext_lazy as _
from .models import ExerciseType, Product, Purchase
from .models import ExerciseType, Product, Purchase, Property, PropertyTranslation
from .models import ExerciseTypeImage
from .models import ExerciseTypeTranslation
from .models import ExerciseTreeTranslation
@ -142,11 +142,34 @@ class PurchaseAdmin(admin.ModelAdmin):
list_filter = ['product']
class TranslationPropertyInline(admin.TabularInline):
model = PropertyTranslation
fields = ('language_code', 'property_name')
extra = 0
class PropertyAdmin(admin.ModelAdmin):
list_display = ('name_colored',)
search_fields = ['property_name']
def name_colored(self, obj):
color_code = '7bc863'
html = '<span style="color: #{};">{}</span>˓→'.format(color_code, obj.property_name)
return format_html(html)
name_colored.admin_order_field = 'property_name'
inlines = [
TranslationPropertyInline
]
admin.site.register(ExerciseType, ExerciseTypeAdmin)
admin.site.register(ExerciseTree, ExerciseTreeAdmin)
admin.site.register(ExercisePlan, ExercisePlanAdmin)
admin.site.register(ExercisePlanDetail, ExercisePlanDetailAdmin)
admin.site.register(Product, ProductAdmin)
admin.site.register(Purchase, PurchaseAdmin)
admin.site.register(Property, PropertyAdmin)
admin.autodiscover()

View File

@ -186,3 +186,32 @@ class Purchase(models.Model):
db_table = 'purchase'
verbose_name = _("Purchase")
verbose_name_plural = _("Purchases")
class Property(models.Model):
property_id = models.AutoField(primary_key=True)
property_name = models.CharField(max_length=100, help_text='The name should be in English here')
property_unit = models.CharField(max_length=10)
class Meta:
db_table = 'property'
verbose_name = _("Customer Property")
verbose_name_plural = _("Customer Properties")
def __str__(self):
return self.property_name
class PropertyTranslation(models.Model):
translation_id = models.AutoField(primary_key=True)
property = models.ForeignKey(Property, on_delete=models.CASCADE)
language_code = models.CharField(max_length=2, choices=LanguageTypes.choices, default=LanguageTypes.HU)
property_name = models.CharField(max_length=100)
class Meta:
db_table = 'property_translation'
verbose_name = _("Translation")
verbose_name_plural = _("Translations")
def __str__(self):
return self.property_name