diff --git a/backend/product/admin.py b/backend/product/admin.py index 075ed6b..188ebad 100644 --- a/backend/product/admin.py +++ b/backend/product/admin.py @@ -23,7 +23,8 @@ class ProductModelAdmin(ModelAdmin, ImportExportModelAdmin): export_form_class = ExportForm inlines = [InStuckColorsInLine] readonly_fields = ('slug', ) - + search_fields = ['name'] + autocomplete_fields = ['related_products'] compressed_fields = True warn_unsaved_form = True diff --git a/backend/product/migrations/0009_productmodel_related_products.py b/backend/product/migrations/0009_productmodel_related_products.py new file mode 100644 index 0000000..eaf63a4 --- /dev/null +++ b/backend/product/migrations/0009_productmodel_related_products.py @@ -0,0 +1,18 @@ +# Generated by Django 5.1.2 on 2025-02-01 16:57 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('product', '0008_remove_productmodel_color_alter_instuckcolors_color'), + ] + + operations = [ + migrations.AddField( + model_name='productmodel', + name='related_products', + field=models.ManyToManyField(to='product.productmodel'), + ), + ] diff --git a/backend/product/models.py b/backend/product/models.py index 7b61c2d..5d62e7c 100644 --- a/backend/product/models.py +++ b/backend/product/models.py @@ -111,7 +111,7 @@ class ProductModel(models.Model): meta_rating = models.FloatField(default=5, help_text='امتیاز محصول') created_at = models.DateTimeField(auto_now_add=True, verbose_name='زمان ثبت محصول') category = models.ForeignKey(SubCategoryModel, blank=True, null=True, on_delete=models.SET_NULL, related_name='products', verbose_name='دسته بندی محصول') - + related_products = models.ManyToManyField('self',) def format_discount_price(self): discount_price = int(self.price * (100 - self.discount) / 100) formatted_num = "{:,.0f}".format(discount_price)