Есть два метода, которые я знаю, чтобы определить, был ли создан объект:
1) При использовании get_or_create
возвращается кортеж в форме (obj, created)
, где created
- логическое значение, явно указывающее, был ли объект создан или нет
2) Сигнал post_save
передает параметр created
, также логический, также указывающий, был ли объект создан или нет.
На простейшем уровне вы можете использовать любой из этих двух хуков, чтобы установить сеансовую переменную, которую вы затем можете проверить и перенаправить соответствующим образом.
Если вы можете обойтись этим, вы также можете напрямую перенаправить либо после вызова get_or_create
, либо с помощью сигнала post_save
.