Как проверить, существует ли свойство в модели с внешним ключом?

У меня есть модель с именем Product

class Product(models.Model):
   order = models.ForeignKey(Order, on_delete = models.CASCADE)
   quantity = models.ForeignKey(Quantity, on_delete = models.CASCADE)
   

В обоих ForeignKey-s у меня есть одно и то же свойство с именем 'number'. Я хочу проверить, существует ли это свойство в модели Product или в ее ForeignKey-s моделях.

Я пытаюсь сделать следующее:

hasattr(Product, 'number')

Попробуйте это:

def model_field_exists(model, field):
      return True if hasattr(model, field) or hasattr(model.order.field.related_model, field) or hasattr(model.quantity.field.related_model, field) else False

if model_field_exists(Product, "number"):
   print("Field exist")
else:
   print("Field does not exist")
Вернуться на верх