Я собираю приложение Django - создал и зарегистрировал модели и формы моделей.
При добавлении или редактировании определенной записи модели мне нужно вызвать внешнюю службу для получения некоторой информации.Если информация получена успешно, я хочу обновить столбец этой модели, о котором пользователь ничего не знает, и сохранить модель.Если вызов не удался, мне нужно предотвратить сохранение и пользовательское сообщение вернулось.
Я попытался вызвать исключения, вернуть сообщения в виде строки и т. Д., Но, похоже, ничего не работает.Хотя я могу остановить сохранение, я получаю трассировку стека, если не возвращаю модель.
Я видел различные решения, использующие метод или сигналы clean (), но ни одно из них не подходитнужно.
Порядок вещей, которые мне нужно выполнить:
Проверка вводимых данных формы (происходит автоматически)
Вызовите API для внешней службы для получения информации
Присвойте информацию реквизиту модели и сохраните модель
Если APIсбой вызова, отмена сохранения () и отображение сообщения пользователю, сообщающего ему, что сохранение не удалось, и причина почему.Если сохранение не удается, страница должна перезагрузиться и не быть перенаправлена на страницу со списком.
Я просто не могу найти простое решение там - любая помощь приветствуется!