I use Django's built-in DeleteView and I've assigned a value to the success_url
attribute. Now in my template, I trigger this view via JQuery' $.post() method. When the item is deleted, I don't get redirected to the success_url
. After some search, I found that it seems to be a problem of AJAX post method, which ignores the redirection.
I fixed it by adding a function to set the window.location="#myRedirectionURL"
as the third parameter of $.post()
in JQuery.
However, this way seems not very Django. Essentially, it solves the problem from the aspect of AJAX, instead of Django. What's more, it leaves the success_url
in DeleteView useless( But you still have to assign a value to success_url
, or Django will raise an error).
So is it the right way to get redirected when you post via AJAX? Is there any better way to do it?
Thanks very much.