Я проверяю объект и ищу поле ManyToMany, которое имеет модель "Risk", а затем я хочу вызвать метод obj.somefieldname.add()
. Это то, что я имею до сих пор
for field in [f for f in obj.__class__._meta.get_fields() if isinstance(f, models.ManyToManyField)
and (f.related_model._meta.object_name == Risk._meta.object_name)]:
getattr(obj, field.name).add(...)
Есть ли лучший способ сделать открытие, чем мой подход?
У меня есть две модели:
class Bar(models.Model):
risk = models.ManyToManyField(Risk)
...
class Foo(models.Model):
risk = models.ManyToManyField(Risk)
...
I есть функция, которая получает произвольный объект, если у объекта есть множество полей, указывающих на модель риска, я хочу добавить кое-что в поле риска множества объектов этого объекта.