Size: a a a

Django [ru] #STAY HOME

2020 March 12

AG

Artem Gubatenko in Django [ru] #STAY HOME
Stanislav Baltrunas
в дочерней форме я не знаю какой из parent_form-Х-price должен был соотноситься с текушим self.cleaned_data['price']
не понятно: нужно как-то сравнивать price из родительской формы с price из дочерних форм в формсете?
источник

SB

Stanislav Baltrunas in Django [ru] #STAY HOME
мне нужен price дочерней формы
источник

SB

Stanislav Baltrunas in Django [ru] #STAY HOME
в родительской нету price, clean метод о котором речь он дочерний
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
Stanislav Baltrunas
в родительской нету price, clean метод о котором речь он дочерний
окончательно запутал
распиши нормально что хочешь сделать и кинь ссылку на код
источник

SB

Stanislav Baltrunas in Django [ru] #STAY HOME
источник

SB

Stanislav Baltrunas in Django [ru] #STAY HOME
я хочу в clean RequestItemForm получить то что мне послали для текушего item
источник

SB

Stanislav Baltrunas in Django [ru] #STAY HOME
когда пользователь шлет не правильно заполненные данные
то в self.cleaned_data нету price

а в self.data все оптом и не понятно к какому item что относится
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
Stanislav Baltrunas
когда пользователь шлет не правильно заполненные данные
то в self.cleaned_data нету price

а в self.data все оптом и не понятно к какому item что относится
а почему думаешь что нету price?
источник

SB

Stanislav Baltrunas in Django [ru] #STAY HOME
KeyError at /
'price'
источник

SB

Stanislav Baltrunas in Django [ru] #STAY HOME
ну и логирую вываел весь self.cleaned_data
источник

SB

Stanislav Baltrunas in Django [ru] #STAY HOME
cleaned_data  
{'DELETE': False,
'na': False,
'request': <Request: Request object (16)>,
'year': <Year: 2018>}
data
{'csrfmiddlewaretoken': '___',
'request_data-0-id': '3852',
'request_data-0-price': '123,123',
'request_data-0-year': '3',
'request_data-1-id': '3853',
'request_data-1-price': '123.1200',
'request_data-1-year': '4',
'request_data-INITIAL_FORMS': '2',
'request_data-MAX_NUM_FORMS': '1000',
'request_data-MIN_NUM_FORMS': '0',
'request_data-TOTAL_FORMS': '2'}
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
Stanislav Baltrunas
KeyError at /
'price'
простейший вариант - заменить price = self.cleaned_data['price'] на price = self.cleaned_data.get('price')

еще неплохо бы, в if not price and not na: проверять на None
источник

SB

Stanislav Baltrunas in Django [ru] #STAY HOME
Artem Gubatenko
простейший вариант - заменить price = self.cleaned_data['price'] на price = self.cleaned_data.get('price')

еще неплохо бы, в if not price and not na: проверять на None
это избавляет меня только от исключения
источник

SB

Stanislav Baltrunas in Django [ru] #STAY HOME
есть пользователи с древними или кривыми браузерами и у них должно работать
одни шлют цену с  запятой, другие шлют с точкой
при запятой вылетайет исключение
с точкой все норм

я хочу как то сам подменять их запятую на точку, и чтоб если других ошибок нет все было хорошо
источник

TP

Taras Petriichuk in Django [ru] #STAY HOME
привет!

не подскажете почему может не работать __hour фильтер

>>> q = Order.objects.all()
>>> q[1].close_date
datetime.datetime(2020, 3, 10, 21, 22, tzinfo=<UTC>)
>>> Order.objects.filter(close_date__hour=21)
<QuerySet []>


>>> django.VERSION
(1, 11, 26, 'final', 0)

вроде как есть уже функционал в версии
источник

HS

Harvey Specter in Django [ru] #STAY HOME
Stanislav Baltrunas
есть пользователи с древними или кривыми браузерами и у них должно работать
одни шлют цену с  запятой, другие шлют с точкой
при запятой вылетайет исключение
с точкой все норм

я хочу как то сам подменять их запятую на точку, и чтоб если других ошибок нет все было хорошо
1. price = strip_tags(price)
2. if "," in price:
        price.replace("," ,".")
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
Stanislav Baltrunas
это избавляет меня только от исключения
я не понимаю как эта конструкция у тебя работает, когда ты, вместо дочерней модели, передаешь RequestForm форму

и если закрыть на это глаза, то делаешь все верно)
источник

SB

Stanislav Baltrunas in Django [ru] #STAY HOME
Harvey Specter
1. price = strip_tags(price)
2. if "," in price:
        price.replace("," ,".")
замену я делать умею) изначальный прайс в случае ошибки не могу получить
источник

SB

Stanislav Baltrunas in Django [ru] #STAY HOME
Artem Gubatenko
я не понимаю как эта конструкция у тебя работает, когда ты, вместо дочерней модели, передаешь RequestForm форму

и если закрыть на это глаза, то делаешь все верно)
да не, этож все вызовы в дочерней форме
источник

AG

Artem Gubatenko in Django [ru] #STAY HOME
Stanislav Baltrunas
да не, этож все вызовы в дочерней форме
что "да не"? - то что вместо модели подаешь форму?
источник