簡體   English   中英

Django:返回帶有POST參數的模板

[英]Django: Returning a template with POST parameters

我有一個包含多行的表,每行都有一個“編輯”按鈕。 單擊此按鈕時,用戶應重定向到已預先填寫其詳細信息的表單。 現在,我已經在“編輯”按鈕的定義內定義了數據屬性:

<a href='#' class="edit-user" data-email="abc@gmail.com">edit</a>

使用JQuery,我派生了'email'數據屬性的值,並將其在POST請求中傳遞給/add-edit-user ,它也映射到具有我的形式的頁面:

$( ".edit-user" ).click(function() 
    {   
        var url = base_url + '/add-edit-user/';
        var data = {
            'email': $(this).data('email'),
            'csrfmiddlewaretoken': csrftoken,
        };
        // $.post(url, data);
        $.post(url, data).done(function(result) {
            console.log(result);
        }).fail(function(error) {
            console.log(error);
        });
    });

/add-edit-user URL映射到以下視圖,在該視圖中我試圖定義表單對象並將其作為上下文變量傳遞到模板文件:

def add_edit_users(request):
    form = AddUpdateForm(request.POST or None)
    data = {'form': form}

    return render(request, 'add_edit_users.html', data)

現在,我的假設是,如果用戶單擊“編輯”按鈕,我將在數據屬性中設置“電子郵件”參數,並將其在我的POST請求中傳遞給/add-edit-user URL,之后我將使用表單對象作為上下文變量來呈現我的表單模板,該模板將顯示帶有已預先填寫的email字段的表單。

但是,單擊edit鏈接后,頁面不會重定向到表單頁面,但是我的確獲得了整個表單頁面的HTML。 如何將流程重定向到表單模板,以便從POST變量中預填充我的輸入字段?

您想要實現的目標可以通過創建如下形式來完成:

<form method='post' action='/add-edit-user/'>
   {% csrf_token %}
   <input type="email" name="email" value="abc@gmail.com" hidden> 
   <button class="edit-user" type="submit">Edit</button>
</form>

此表單將帖子數據中電子郵件字段的值發送到url: / add-edit-user / 結果是重定向到帶有電子郵件字段的URL。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM