Size: a a a

Django [ru] #STAY HOME

2020 May 05

yh

yasya huyase in Django [ru] #STAY HOME
Антон
Свойством товара это быть не может
почему вы так думаете?
источник

А

Антон in Django [ru] #STAY HOME
Товар тапки, Вася заказал десять пар, Петя двадцать
источник

А

Антон in Django [ru] #STAY HOME
Это именно свойство контракта
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
Антон
Товар тапки, Вася заказал десять пар, Петя двадцать
у него это модель товаров в контракте, а не модель товаров
источник

yh

yasya huyase in Django [ru] #STAY HOME
Антон
Просто какая-то странная модель из двух FK + количество. Почему бы его не включить в контракт?
логикая такая, что есть 1 договор и к этому довогору добавляются несколько товаров
реализовать это в одной форме смог только так
источник

А

Антон in Django [ru] #STAY HOME
Ок
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
yasya huyase
логикая такая, что есть 1 договор и к этому довогору добавляются несколько товаров
реализовать это в одной форме смог только так
не пытался сравнивать одинаковые объекты модели ContractItems в консоли?
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
имеется введу: инициализированные, но не сохраненые
источник

yh

yasya huyase in Django [ru] #STAY HOME
Artem Gubatenko
не пытался сравнивать одинаковые объекты модели ContractItems в консоли?
типа, сравнить item1 = item2?
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
yasya huyase
типа, сравнить item1 = item2?
да
просто в консоли
источник

yh

yasya huyase in Django [ru] #STAY HOME
сейчас попробую
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
yasya huyase
типа, сравнить item1 = item2?
важно чтоб были одинаковые поля, которые заданы как уникальные в модели, для чистоты эксперемента
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
yasya huyase
типа, сравнить item1 = item2?
item1 == item2
источник

А

Антон in Django [ru] #STAY HOME
В той форме админки, где ты добавляет в контракт товары пишешь clean и там перебираешь товары - ты так делал?
источник

yh

yasya huyase in Django [ru] #STAY HOME
Антон
В той форме админки, где ты добавляет в контракт товары пишешь clean и там перебираешь товары - ты так делал?
это не админка, а inline_fromsetfactory
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
он делал наподобие: item in [item,]
источник

yh

yasya huyase in Django [ru] #STAY HOME
и к стати, в админке формсет валидируестя, и при посте 2х одинаковых товаров, вылезает дефолтная ошибка, что такой товар уже существует
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
yasya huyase
и к стати, в админке формсет валидируестя, и при посте 2х одинаковых товаров, вылезает дефолтная ошибка, что такой товар уже существует
ну как, получилось сравнить?
источник

yh

yasya huyase in Django [ru] #STAY HOME
c1 = ContractItems.objects.create(contract=c1, item=catalog, quantity=2)
c2 = ContractItems.objects.create(contract=c1, item=catalog, quantity=2)

ValueError: Cannot assign "<ContractItems: Dialysator>": "ContractItems.contract" must be a "Contract" instance.
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
yasya huyase
c1 = ContractItems.objects.create(contract=c1, item=catalog, quantity=2)
c2 = ContractItems.objects.create(contract=c1, item=catalog, quantity=2)

ValueError: Cannot assign "<ContractItems: Dialysator>": "ContractItems.contract" must be a "Contract" instance.
вот так:
c1 = Contract.objects.get(id=1)
catalog = Item.objects.get(id=1)
ci1 = ContractItems(contract=c1, item=catalog, quantity=2)
ci2 = ContractItems(contract=c1, item=catalog, quantity=2)

print(ci1 == ci2)
источник