这是我的模特课:
>> mex -O sample.c
Building with 'gcc'.
MEX completed successfully.
>> n = 5;
>> T = sample(n)
T =
1 0 0 0 0
0 1 0 0 0
0 0 1 0 0
0 0 0 1 0
0 0 0 0 1
这是我的序列化器:
class PoliceAssurance(models.Model):
Numpolice = models.IntegerField()
Raison = models.CharField(max_length=50)
Tel = models.IntegerField()
Email = models.CharField(max_length=50)
现在,我需要通过AJAX调用发出POST请求。有谁可以提供有关我如何处理这项任务的信息?
这是我的views.py
class PoliceSerializer(serializers.ModelSerializer):
class Meta:
model = PoliceAssurance
fields = ('Numpolice','Raison','Tel','Email');
和我的urls.py
@login_required(login_url="login/")
def home(request):
return render(request,"home.html")
class PoliceViewset(generics.ListCreateAPIView):
queryset = PoliceAssurance.objects.all()
serializer_class = PoliceSerializer
这是我的ajax请求
urlpatterns=[
url(r'^$', views.home, name='home'),
url(r'PoliceAssurance',views.PoliceViewset.as_view(), name='PoliceAssurance'),
]
答案 0 :(得分:3)
您可能需要在此链接(详细信息)中看到此http://www.django-rest-framework.org/topics/ajax-csrf-cors/#javascript-clients和django文档,而且我的代码对我很有用
<html>
<body>
Your email address is: <?php echo $_GET["email"]; ?>
</body>
</html>
Django休息框架不像普通的django那样工作。你需要trans&#34; csrfmiddlewaretoken&#34;在数据中&#34; X-CSRFToken&#34;或者&#34; HTTP-X-CSRFToken&#34;在RequestHeader中
答案 1 :(得分:0)
您可能需要发送CSRF信息以及Ajax请求,或者免除您的视图。见here。如果你在ajax中包含这个beforeSend函数,它可以做到这一点:
$.ajax({
type: "POST",
...
beforeSend: function(xhr, settings) {
if (!csrfSafeMethod(settings.type) && !this.crossDomain) {
xhr.setRequestHeader("X-CSRFToken", {% csrf_token %});
}
},
...
假设javascript是模板的一部分,可以通过{%csrf_token%}来选择csrftoken。
希望这有帮助。