簡體   English   中英

如何解決后ajax請求問題?

[英]How to fix post-ajax request issue?

瀏覽次數:

@csrf_exempt
def client_data(request):
    if request.method == 'POST':
        form = formData(request.POST)
        if form.is_valid():
            ip = get_ip(request)
            region = get_region(ip)
            return redirect("/")

形成:

class formData(forms.Form):
email = forms.CharField(label='email', required=True, error_messages={'required': 'Укажите email'})
phn = forms.CharField(label='phone', required=True, error_messages={'required': 'Укажите  phone'})
timezone = forms.CharField(label='timezone')

模板:

$(function () {
    $('#send').click(function () {

        var form = $('#send');
        var send = {};
        send['email'] = $("#email").val()
        send['phn'] = $("#phn").val()
        send['timezone'] = (new Date()).getTimezoneOffset().toString();

        $.ajax({
            url: "/sms/send/",
            type: "POST",
            data: send,//$("#send_form").serialize(), timezone,
            dataType: "json",
            success: function (response) {
                alert("Данные отправлены");
            },
            error: function (xhr, textStatus, thrownError){
                alert(thrownError)
            }
        });
    return false;
    })
});
<form class="form-inline text-left" id="send_form" method="post">
{% csrf_token %}
<div class="form-group">
    <input type="email" name="email" value="" id="email" class="form-control field" placeholder="Ваш E-mail" />
</div>
<div class="form-group">
    <input type="tel" name="phn" value="" id="phn" class="form-control field" placeholder="Ваш Телефон" />
</div>
<div class="form-group" style="margin-left: 30px">
    <input id="send" type="submit" class="button send" value="Отправить">
</div>

服務器響應:/ sms / send /處的ValueError視圖sms_send.views.client_data沒有返回HttpResponse對象。 它返回None。

我究竟做錯了什么? 如何解決?

錯誤回溯非常清楚。 每個Django視圖必須返回HttpResponse對象。 如果要進行重定向,請按照以下步驟操作:

from django.http import HttpResponseRedirect

def client_data(request):
    # do something ...
    return HttpResponseRedirect('/')

暫無
暫無

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

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