Процесс исключения Django в производственном режиме ⇐ Python
-
Anonymous
Процесс исключения Django в производственном режиме
Я создал систему управления запасами с помощью Django. Когда я продаю некоторые товары, мне нужно проверить, достаточно ли товаров в системе. Я переписываю функцию сохранения в models.py и вызываю исключение, когда количество меньше 0. Я хочу получить исключение и показать его в view.py. Однако при возникновении исключения в Интернете не отображается никакая информация. Как мне поступить или есть ли другой способ решить мою проблему?
Вот код:
#views.py Защиту custom_Exception_handler (запрос, исключение): если isinstance (исключение, ValueError): импортировать PDB; pdb.set_trace() error_message = ул (исключение) вернуть рендер (запрос, '500.html', контекст = {'error_message': error_message}, статус = 500) # models.py def save(self, *args, **kwargs): obj = Stock.objects.get(id=self.stock_id.id) left_quantity = obj.quantity - само.количество если левое_количество < 0: поднять ValueError('Недостаточно инвентаря') по умолчанию = {'количество': left_quantity, 'update_time': self.consume_time} для ключа значение в defaults.items(): setattr(объект, ключ, значение) объект.сохранить() super(RepairOutStock, self).save(*args, **kwargs) # settings.py handler500 = 'spare_parts.views.custom_error_view' # ошибка 500 # templates/500.html {{ error_message }}
Я создал систему управления запасами с помощью Django. Когда я продаю некоторые товары, мне нужно проверить, достаточно ли товаров в системе. Я переписываю функцию сохранения в models.py и вызываю исключение, когда количество меньше 0. Я хочу получить исключение и показать его в view.py. Однако при возникновении исключения в Интернете не отображается никакая информация. Как мне поступить или есть ли другой способ решить мою проблему?
Вот код:
#views.py Защиту custom_Exception_handler (запрос, исключение): если isinstance (исключение, ValueError): импортировать PDB; pdb.set_trace() error_message = ул (исключение) вернуть рендер (запрос, '500.html', контекст = {'error_message': error_message}, статус = 500) # models.py def save(self, *args, **kwargs): obj = Stock.objects.get(id=self.stock_id.id) left_quantity = obj.quantity - само.количество если левое_количество < 0: поднять ValueError('Недостаточно инвентаря') по умолчанию = {'количество': left_quantity, 'update_time': self.consume_time} для ключа значение в defaults.items(): setattr(объект, ключ, значение) объект.сохранить() super(RepairOutStock, self).save(*args, **kwargs) # settings.py handler500 = 'spare_parts.views.custom_error_view' # ошибка 500 # templates/500.html {{ error_message }}
Мобильная версия