diff --git a/apps/location/admin.py b/apps/location/admin.py index a52fa14e..a7610a65 100644 --- a/apps/location/admin.py +++ b/apps/location/admin.py @@ -19,22 +19,6 @@ class CityAdmin(admin.ModelAdmin): """City admin.""" -class WineAppellationInline(admin.TabularInline): - model = models.WineAppellation - extra = 0 - - -@admin.register(models.WineRegion) -class WineRegionAdmin(admin.ModelAdmin): - """WineRegion admin.""" - inlines = [WineAppellationInline, ] - - -@admin.register(models.WineAppellation) -class WineAppellationAdmin(admin.ModelAdmin): - """WineAppellation admin.""" - - @admin.register(models.Address) class AddressAdmin(admin.OSMGeoAdmin): """Address admin.""" diff --git a/apps/location/serializers/common.py b/apps/location/serializers/common.py index 2a70c3b8..5ba26435 100644 --- a/apps/location/serializers/common.py +++ b/apps/location/serializers/common.py @@ -150,19 +150,6 @@ class AddressDetailSerializer(AddressBaseSerializer): ) -class WineAppellationBaseSerializer(serializers.ModelSerializer): - """Wine appellations.""" - name_translated = TranslatedField() - - class Meta: - """Meta class.""" - model = models.WineAppellation - fields = [ - 'id', - 'name_translated', - ] - - class WineRegionBaseSerializer(serializers.ModelSerializer): """Wine region serializer.""" name_translated = TranslatedField() diff --git a/apps/product/models.py b/apps/product/models.py index a4f5a120..f4052963 100644 --- a/apps/product/models.py +++ b/apps/product/models.py @@ -148,8 +148,8 @@ class Product(TranslatedFieldsMixin, BaseAttributes): subtypes = models.ManyToManyField(ProductSubType, blank=True, related_name='products', verbose_name=_('Subtypes')) - establishment = models.ForeignKey('establishment.Establishment', - on_delete=models.PROTECT, + establishment = models.ForeignKey('establishment.Establishment', on_delete=models.PROTECT, + blank=True, null=True, related_name='products', verbose_name=_('establishment')) public_mark = models.PositiveIntegerField(blank=True, null=True, default=None, @@ -160,7 +160,12 @@ class Product(TranslatedFieldsMixin, BaseAttributes): verbose_name=_('wine region')) wine_standard = models.ForeignKey('product.WineStandard', on_delete=models.PROTECT, blank=True, null=True, - verbose_name=_('wine appellation')) + verbose_name=_('wine standard')) + wine_village = models.ForeignKey('location.WineVillage', on_delete=models.PROTECT, + blank=True, null=True, + verbose_name=_('wine appellation')) + bottles_produced = models.IntegerField(blank=True, null=True, + verbose_name=_('bottles produced')) slug = models.SlugField(unique=True, max_length=255, null=True, verbose_name=_('Establishment slug')) favorites = generic.GenericRelation(to='favorites.Favorites') diff --git a/apps/product/serializers/common.py b/apps/product/serializers/common.py index 7ebfaa28..66fc132e 100644 --- a/apps/product/serializers/common.py +++ b/apps/product/serializers/common.py @@ -4,8 +4,7 @@ from utils.serializers import TranslatedField, FavoritesCreateSerializer from product.models import Product, ProductSubType, ProductType from utils import exceptions as utils_exceptions from django.utils.translation import gettext_lazy as _ -from location.serializers import (WineRegionBaseSerializer, WineAppellationBaseSerializer, - CountrySimpleSerializer) +from location.serializers import WineRegionBaseSerializer, CountrySimpleSerializer class ProductSubTypeBaseSerializer(serializers.ModelSerializer): @@ -44,7 +43,6 @@ class ProductBaseSerializer(serializers.ModelSerializer): product_type = ProductTypeBaseSerializer() subtypes = ProductSubTypeBaseSerializer(many=True) wine_region = WineRegionBaseSerializer(allow_null=True) - wine_appellation = WineAppellationBaseSerializer(allow_null=True) available_countries = CountrySimpleSerializer(source='country', many=True) class Meta: