Можно ли определить отношение внешнего ключа или OneToOne в модели django только с подмножеством данных?Модель Django ForeignKey с подмножеством данных
Например:
У меня есть 2 модели.
@with_author
class Product(models.Model):
GTIN = models.CharField(max_length=30)
material = models.ForeignKey(Material, on_delete=models.PROTECT)
UOM = models.OneToOneField(MaterialUOM)
defaultPrice = MoneyField(max_digits=10, decimal_places=2, default_currency='USD')
и
@with_author
class UOM(models.Model):
uomname = models.CharField(max_length=30)
material = models.ForeignKey(Material, on_delete=models.PROTECT)
так что я хочу в моей модели продукта только, чтобы значения UoM, которые имеют такое же значение, как и в материальной продукции.
Возможно ли это на уровне модели или в любом другом месте и не отображать значения, не относящиеся к выпадающему меню?
'clean()' метод будет вызван только при сохранении Модели с использованием 'ModelForm', а не иначе. Я думаю, что метод over save лучше использовать для других случаев. И что касается ошибок, вы можете поднять их для этого. – AKS
Это не работает. Я не могу добавить чистый уровень формы, так как у меня нет материала в моей форме, даже если у меня есть его в модели. И когда я добавляю чистую модель, я получаю ошибку. Тип исключения: \t RelatedObjectDoesNotExist Исключительное значение: \t Продукт не имеет материала. –
, даже если я переопределяю уровень сохранения, мое раскрывающееся меню все равно покажет все значения. –