我有一个添加移动应用条目的模型:
class MobileApp(models.Model):
name = models.CharField(max_length=255)
description = models.TextField()
images = models.ManyToManyField(Image, blank=True)
在 Django Admin 中,我想要做的是过滤列表中列出的图像,以防止 django 加载该表中的所有图像,这些图像非常多。
所以我目前做的是以下内容:
class MobileAppAdmin(admin.ModelAdmin):
def get_form(self, request, obj=None, **kwargs):
form = super(MobileAppAdmin, self).get_form(request, obj, **kwargs)
if obj:
form.base_fields['images'].queryset = Image.objects.filter(pk__in=obj.images.all())
else:
form.base_fields['images'].queryset = Image.objects.filter(pk=0)
return form
但是在提交表单时,添加新图像时,会发生以下情况:
Select a valid choice. XYZ is not one of the available choices.
在图像领域。
我怎样才能使这项工作?我有很多字段需要与 django 相同的移动,因为 django 不断加载所有记录以填充关系列表。
谢谢