Как я могу сделать условие readonly для некоторых полей на основе того, что я выбираю в поле foreignkey (поля существуют в одной модели): Django-admin
У меня есть модельА, содержащая поле1(foreignkey), поле2(float) и другие поля (все они float). Я хотел бы сделать некоторые другие поля доступными для чтения (не редактируемыми) в зависимости от того, что я выберу в поле1(foreignkey), и чтобы быть ясным, все эти поля находятся в одной модели. Я хотел бы сделать это на django-admin:
Вот мой models.py:
class Modele(models.Model):
category = models.ForeignKey(Category, on_delete=models.CASCADE, related_name='sizes',null = True)
w_profile = models.FloatField(null=True)
b = models.FloatField(null=True, blank=True)
tw = models.FloatField(null=True, blank=True)
tf = models.FloatField(null=True, blank=True)
Вот мой admin.py:
admin.site.register(ProfileSize)
class ModeleAdmin(admin.ModelAdmin):
def __init__(self, *args, **kwargs):
super(Modele, self).__init__(*args, **kwargs)
if self.category.name == "Flate":
return self.readonly_fields + ('tw', 'b')
elif self.category.name == "Circular":
return self.readonly_fields + ('b')
else:
return self.readonly_fields + ('tf')
Но то, что у меня есть в admin.py, не дало мне никакого результата, любая помощь будет оценена по достоинству. спасибо.