با سلام من می خوام تگ های محصول رو یکی یکی داخل یک کادر نشون بدم ولی وقتی حلقه for رو داخلش می زنم خطا میده و میگه ManyToManyField قابل نمایش نیست باید چکار کنم
سلام خب برا این مورد many to many جواب نمیده دلیل دقیقشو نمیدونم بگم برا اینکار یه مدل بساز
class ProductTags(models.Model):
title = models.CharField(max_length=200)
product = models.ForeignKey(Product, on_delete=models.CASCADE)بعد برا راحتی کار که تو بخش اضافه/ویرایش محصول بتونی تگ هارو همونجا ویرایش کنی تو admin.py از stacked inline میتونی استفاده کنی به این صورت
class TagInLine(admin.StackedInline):
model = models.ProductTags
extra = 1
class ProductAdmin(admin.ModelAdmin):
inlines = [TagInLine]
admin.site.register(models.Product,ProductAdmin)برا for loop ام از دستور product.producttags_set.all میتونی استفاده کنی
اگه میخوای stacked in line رو تو ادمین شخصی سازی شده هم بیاری ( CREATEVIEW , EDITVEIW )
اینو مطالعه کن https://github.com/AndrewIngram/django-extra-views/
ممنون
خواهش میکنم 😉
برای اینکه دو تا وارد کنیم میشه مثلا هم گالری تصاویر و هم تگ ها
بله میشه,
class TagInLine(admin.StackedInline):
model = models.ProductTags
extra = 1
class GalleryInLine(admin.StackedInline):
model = models.ProductGallery
extra = 1
class ProductAdmin(admin.ModelAdmin):
inlines = [TagInLine,GalleryInLine]
admin.site.register(models.Product,ProductAdmin)ممنون
سلام دوست من
خوشحالم که مشکلتون برطرف شده
ممنونم از اقای اکبری بابت پاسخگوییشون
موفق باشین :)