slug genrator for sub category and category and parent filed for sub category serializer
This commit is contained in:
@@ -13,6 +13,7 @@ class ProductModelAdmin(ModelAdmin, ImportExportModelAdmin):
|
||||
import_form_class = ImportForm
|
||||
export_form_class = ExportForm
|
||||
|
||||
readonly_fields = ('slug', )
|
||||
|
||||
compressed_fields = True
|
||||
warn_unsaved_form = True
|
||||
@@ -31,6 +32,7 @@ class MainCategoryModelAdmin(ModelAdmin, ImportExportModelAdmin):
|
||||
import_form_class = ImportForm
|
||||
export_form_class = ExportForm
|
||||
|
||||
readonly_fields = ('slug', )
|
||||
|
||||
compressed_fields = True
|
||||
warn_unsaved_form = True
|
||||
@@ -46,6 +48,7 @@ class SubCategoryModelAdmin(ModelAdmin, ImportExportModelAdmin):
|
||||
import_form_class = ImportForm
|
||||
export_form_class = ExportForm
|
||||
|
||||
readonly_fields = ('slug', )
|
||||
|
||||
compressed_fields = True
|
||||
warn_unsaved_form = True
|
||||
|
||||
@@ -19,8 +19,10 @@ class MainCategoryModel(models.Model):
|
||||
def __str__(self):
|
||||
return self.name
|
||||
|
||||
# def get_absolute_url(self):
|
||||
# return reverse('category_detail', kwargs={'slug': self.slug})
|
||||
def save(self, *args, **kwargs):
|
||||
if not self.slug:
|
||||
self.slug = slugify(self.name, allow_unicode=True)
|
||||
super().save(*args, **kwargs)
|
||||
|
||||
|
||||
class SubCategoryModel(models.Model):
|
||||
@@ -39,6 +41,10 @@ class SubCategoryModel(models.Model):
|
||||
|
||||
def __str__(self):
|
||||
return self.name
|
||||
def save(self, *args, **kwargs):
|
||||
if not self.slug:
|
||||
self.slug = slugify(self.name, allow_unicode=True)
|
||||
super().save(*args, **kwargs)
|
||||
|
||||
class DollorModel(models.Model):
|
||||
price = models.FloatField(null=True, blank=True, verbose_name='قیمت دلار')
|
||||
|
||||
@@ -37,11 +37,14 @@ class CommentSerializer(serializers.ModelSerializer):
|
||||
|
||||
class SubCategorySerializer(serializers.ModelSerializer):
|
||||
product_count = serializers.SerializerMethodField()
|
||||
parent = serializers.SerializerMethodField()
|
||||
class Meta:
|
||||
model = SubCategoryModel
|
||||
fields = ['id', 'name', 'slug','icon', 'meta_title', 'meta_description', 'product_count', 'show']
|
||||
fields = ['id', 'name', 'slug','icon', 'meta_title', 'meta_description', 'product_count', 'show', 'parent']
|
||||
def get_product_count(self, obj):
|
||||
return obj.products.count()
|
||||
def get_parent(self, obj):
|
||||
return obj.parent.name
|
||||
|
||||
|
||||
class MainCategorySerializer(serializers.ModelSerializer):
|
||||
|
||||
Reference in New Issue
Block a user