【发布时间】:2012-02-23 11:57:35
【问题描述】:
在 django 我有
#template
$.get("/places/{{ place.id }}/save/",{description : cadena }
#view
place.description = request.POST.getlist('description')[0]
工作正常。
但是如果尝试更改为$.post
#template
$.post("/places/{{ place.id }}/save/",{description : cadena }
#view
print request.POST
什么都没发生
解决了
我的问题,我没有在发送$.post 的视图中添加context_instance=RequestContext(request),因为这个crsf_token 不存在。
现在可以使用此更改
$.post("/places/{{ place.id }}/save/",{description : cadena, csrfmiddlewaretoken: '{{ csrf_token }}'}
并且是{{ csrf_token }} 不是{% csrf_token %} 的必要条件。{% csrf_token %} 创建一个<input ...>
【问题讨论】: