Merge branch 'main' of https://github.com/Byeto-Company/hossein_por_shop
This commit is contained in:
@@ -0,0 +1,24 @@
|
|||||||
|
# Generated by Django 5.1.2 on 2025-12-08 08:08
|
||||||
|
|
||||||
|
import django.db.models.deletion
|
||||||
|
from django.db import migrations, models
|
||||||
|
|
||||||
|
|
||||||
|
class Migration(migrations.Migration):
|
||||||
|
|
||||||
|
dependencies = [
|
||||||
|
('product', '0059_alter_maincategorymodel_parent'),
|
||||||
|
]
|
||||||
|
|
||||||
|
operations = [
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='maincategorymodel',
|
||||||
|
name='parent',
|
||||||
|
field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='maincategorys', to='product.unitcategorymodel', verbose_name='دسته\u200cبندی والد'),
|
||||||
|
),
|
||||||
|
migrations.AlterField(
|
||||||
|
model_name='subcategorymodel',
|
||||||
|
name='parent',
|
||||||
|
field=models.ForeignKey(null=True, on_delete=django.db.models.deletion.SET_NULL, related_name='subcategorys', to='product.maincategorymodel', verbose_name='دسته\u200cبندی والد'),
|
||||||
|
),
|
||||||
|
]
|
||||||
@@ -54,7 +54,7 @@ class MainCategoryModel(models.Model):
|
|||||||
max_length=160, verbose_name="توضیحات متا", help_text="توضیحات متا برای SEO", blank=True, null=True)
|
max_length=160, verbose_name="توضیحات متا", help_text="توضیحات متا برای SEO", blank=True, null=True)
|
||||||
video = models.FileField(upload_to='category_videos/',
|
video = models.FileField(upload_to='category_videos/',
|
||||||
blank=True, null=True, verbose_name='ویدیو')
|
blank=True, null=True, verbose_name='ویدیو')
|
||||||
parent = models.ForeignKey(UnitCategoryModel, on_delete=models.CASCADE,
|
parent = models.ForeignKey(UnitCategoryModel, on_delete=models.SET_NULL,
|
||||||
related_name='maincategorys', verbose_name='دستهبندی والد', null=True)
|
related_name='maincategorys', verbose_name='دستهبندی والد', null=True)
|
||||||
class Meta:
|
class Meta:
|
||||||
verbose_name = "دستهبندی اصلی"
|
verbose_name = "دستهبندی اصلی"
|
||||||
@@ -84,8 +84,8 @@ class SubCategoryModel(models.Model):
|
|||||||
max_length=60, verbose_name="عنوان متا", help_text="عنوان متا برای SEO", blank=True, null=True)
|
max_length=60, verbose_name="عنوان متا", help_text="عنوان متا برای SEO", blank=True, null=True)
|
||||||
meta_description = models.TextField(
|
meta_description = models.TextField(
|
||||||
max_length=160, verbose_name="توضیحات متا", help_text="توضیحات متا برای SEO", blank=True, null=True)
|
max_length=160, verbose_name="توضیحات متا", help_text="توضیحات متا برای SEO", blank=True, null=True)
|
||||||
parent = models.ForeignKey(MainCategoryModel, on_delete=models.CASCADE,
|
parent = models.ForeignKey(MainCategoryModel, on_delete=models.SET_NULL,
|
||||||
related_name='subcategorys', verbose_name='دستهبندی والد')
|
related_name='subcategorys', verbose_name='دستهبندی والد', null=True)
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
verbose_name = "زیر دستهبندی"
|
verbose_name = "زیر دستهبندی"
|
||||||
|
|||||||
@@ -66,14 +66,14 @@ class AllCategories(APIView):
|
|||||||
instance=categories, many=True, context={'request': request})
|
instance=categories, many=True, context={'request': request})
|
||||||
return Response(categories_ser.data, status=status.HTTP_200_OK)
|
return Response(categories_ser.data, status=status.HTTP_200_OK)
|
||||||
class UnitCategorySerializerV2(serializers.ModelSerializer):
|
class UnitCategorySerializerV2(serializers.ModelSerializer):
|
||||||
maincategorys = serializers.SerializerMethodField()
|
subcategorys = serializers.SerializerMethodField()
|
||||||
|
|
||||||
class Meta:
|
class Meta:
|
||||||
model = UnitCategoryModel
|
model = UnitCategoryModel
|
||||||
fields = ['id', 'name', 'slug', 'icon', 'meta_title',
|
fields = ['id', 'name', 'slug', 'icon', 'meta_title',
|
||||||
'meta_description', 'image', 'maincategorys']
|
'meta_description', 'image', 'subcategorys']
|
||||||
|
|
||||||
def get_maincategorys(self, obj):
|
def get_subcategorys(self, obj):
|
||||||
main_categories = obj.maincategorys.all()
|
main_categories = obj.maincategorys.all()
|
||||||
return MainCategorySerializer(main_categories, many=True, context=self.context).data
|
return MainCategorySerializer(main_categories, many=True, context=self.context).data
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user