forked from CGM_Public/pretix_original
Item object admin
This commit is contained in:
@@ -4,7 +4,8 @@ from django.utils.translation import ugettext as _
|
||||
from django import forms
|
||||
|
||||
from tixlbase.models import (
|
||||
User, Organizer, OrganizerPermission, Event, EventPermission
|
||||
User, Organizer, OrganizerPermission, Event, EventPermission,
|
||||
Property, PropertyValue, Item, ItemFlavor
|
||||
)
|
||||
|
||||
|
||||
@@ -90,6 +91,36 @@ class EventAdmin(admin.ModelAdmin):
|
||||
list_filter = ('date_from', 'locale', 'currency')
|
||||
|
||||
|
||||
class PropertyValueInline(admin.StackedInline):
|
||||
|
||||
model = PropertyValue
|
||||
extra = 4
|
||||
|
||||
|
||||
class PropertyAdmin(admin.ModelAdmin):
|
||||
|
||||
model = Property
|
||||
inlines = [PropertyValueInline]
|
||||
list_display = ('name', 'event')
|
||||
search_fields = ('name', 'event')
|
||||
|
||||
|
||||
class ItemFlavorInline(admin.TabularInline):
|
||||
|
||||
model = ItemFlavor
|
||||
extra = 4
|
||||
|
||||
|
||||
class ItemAdmin(admin.ModelAdmin):
|
||||
|
||||
model = Item
|
||||
inlines = [ItemFlavorInline]
|
||||
list_display = ('name', 'event', 'category')
|
||||
search_fields = ('name', 'event', 'category', 'short_description')
|
||||
|
||||
|
||||
admin.site.register(User, TixlUserAdmin)
|
||||
admin.site.register(Organizer, OrganizerAdmin)
|
||||
admin.site.register(Event, EventAdmin)
|
||||
admin.site.register(Property, PropertyAdmin)
|
||||
admin.site.register(Item, ItemAdmin)
|
||||
|
||||
@@ -358,6 +358,9 @@ class Property(models.Model):
|
||||
verbose_name=_("Property name"),
|
||||
)
|
||||
|
||||
def __str__(self):
|
||||
return self.name
|
||||
|
||||
class Meta:
|
||||
verbose_name = _("Item property")
|
||||
verbose_name_plural = _("Item properties")
|
||||
@@ -379,6 +382,9 @@ class PropertyValue(models.Model):
|
||||
verbose_name=_("Value"),
|
||||
)
|
||||
|
||||
def __str__(self):
|
||||
return "%s: %s" % (self.prop.name, self.value)
|
||||
|
||||
|
||||
class Item(models.Model):
|
||||
"""
|
||||
@@ -467,12 +473,12 @@ class ItemFlavor(models.Model):
|
||||
Item,
|
||||
related_name='flavors'
|
||||
)
|
||||
prop = models.ManyToManyField(
|
||||
values = models.ManyToManyField(
|
||||
PropertyValue,
|
||||
related_name='values'
|
||||
related_name='flavors',
|
||||
)
|
||||
active = models.BooleanField(
|
||||
default=True
|
||||
default=True,
|
||||
)
|
||||
default_price = models.DecimalField(
|
||||
decimal_places=2, max_digits=7,
|
||||
|
||||
Reference in New Issue
Block a user