Я хочу получить имя поля и выполнить с ним некоторую операцию в зависимости от типа поля.
Допустим, модель:
class Model1(models.Model):
m1 = models.FileField(...)
m2 = models.CharField(...)
m3 = models.IntegerField(...)
Я хочу создать метод, который обнаружит поле поля и удалит его.
Я думал об использовании мета-словаря. Это метод, который я создал:
from django.db.models.fields.files import FieldFile
def method_name(instance):
for nm, cls in instance.__dict__.items():
if type(cls) is FieldFile:
instance.nm.delete()
Вышеуказанный метод не работал, так как тип для файлового поля 'str', а не файловое поле. Я буду признателен за любые решения.