2016-02-29 46 views
0

我想在使用Django的模式窗口內實現登錄窗體。基本上,我正在關注this教程。它運行良好,但我想在表單提交併驗證後將用戶重定向到他/她的個人頁面。根據前面的引導,我想我必須改變在高亮部分的代碼:Django窗體中的模式:重定向和動態處理錯誤

$(form).submit(function (e) { 
     e.preventDefault(); 
     $.ajax({ 
      type: $(this).attr('method'), 
      url: $(this).attr('action'), 
      data: $(this).serialize(), 
      success: function (xhr, ajaxOptions, thrownError) { 
       if ($(xhr).find('.has-error').length > 0) { 
        $(modal).html(xhr); 
        formAjaxSubmit(form, modal); 
       } else { 
        $(modal).modal('hide'); 
        ########################### 
        REDIRECT HERE TO ACTION URL 
        ########################### 
       } 
      }, 
      error: function (xhr, ajaxOptions, thrownError) { 
       // handle response errors here 
      } 
     }); 
    }); 

不過,我不知道這是否是正確的解決方案,也沒有這是否可能在這種情況下。

+0

我認爲你需要在突出顯示的部分添加重定向代碼。這看起來是正確的,將工作。 – arulmr

+0

是的..但我怎樣才能檢索形式操作的結果網址? – blueSurfer

+0

您正在嘗試將用戶重定向到他的個人資料頁面嗎?它應該有一個URL模式的權利?嘗試使用它。 – arulmr

回答

0

當你說個人頁面時,這應該是一個隱含的東西,即顯示當前登錄儀表板的用戶的site.com/dashboard。如果您想要重定向類似下一個鏈接(即用戶嘗試訪問頁面需要登錄)或類似的內容,則可以始終將下一個鏈接傳回給xhr請求的響應中。