UserError сработал со значением 0

1

У меня есть этот любопытный

advance_payment_percent = fields.Integer(string='Advance Payment', default=50)


 if not self.advance_payment_percent:
               raise UserError(_("Please enter advance payment percent under client form!"))

проблема в том, что когда я ввожу 0 в advance_payment_percent, этот UserError по-прежнему запускается, потому что 0 = False в python, поэтому как я могу обойти это, что я мог бы использовать 0, и эта ошибка не будет запущена. Он должен запускаться только тогда, когда поле пусто.

Теги:
odoo
python-2.7
odoo-8
odoo-9

1 ответ

2
Лучший ответ

Может быть, также проверьте, что self.advance_payment_percent не относится к типу int?

if type(self.advance_payment_percent) != int and not self.advance_payment_percent:

Ещё вопросы

Сообщество Overcoder
Наверх
Меню