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.db.models import Sum
from django.utils.html import format_html from django.utils.html import format_html
from django.utils.translation import ugettext_lazy as _ 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 ExerciseTypeImage
from .models import ExerciseTypeTranslation from .models import ExerciseTypeTranslation
from .models import ExerciseTreeTranslation from .models import ExerciseTreeTranslation
@ -142,11 +142,34 @@ class PurchaseAdmin(admin.ModelAdmin):
list_filter = ['product'] 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(ExerciseType, ExerciseTypeAdmin)
admin.site.register(ExerciseTree, ExerciseTreeAdmin) admin.site.register(ExerciseTree, ExerciseTreeAdmin)
admin.site.register(ExercisePlan, ExercisePlanAdmin) admin.site.register(ExercisePlan, ExercisePlanAdmin)
admin.site.register(ExercisePlanDetail, ExercisePlanDetailAdmin) admin.site.register(ExercisePlanDetail, ExercisePlanDetailAdmin)
admin.site.register(Product, ProductAdmin) admin.site.register(Product, ProductAdmin)
admin.site.register(Purchase, PurchaseAdmin) admin.site.register(Purchase, PurchaseAdmin)
admin.site.register(Property, PropertyAdmin)
admin.autodiscover() admin.autodiscover()

View File

@ -186,3 +186,32 @@ class Purchase(models.Model):
db_table = 'purchase' db_table = 'purchase'
verbose_name = _("Purchase") verbose_name = _("Purchase")
verbose_name_plural = _("Purchases") 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