我刚刚迁移到 django 1.5,我面临着关于 url 语言重定向的新政策的问题,POST
例如,我的旧 Ajax/search
最终被重定向到/en/search
了GET
。如何解决这个问题(最好不要修改太多代码)?
问问题
542 次
2 回答
1
我想出了一个解决方案,我将我的 ajax 帖子网址命名为:
url(r"^search_engine/ajax_form/$", ajax_form, name='ajax-search')
在我的模板中我做了:
<form method="post" action="{% url 'ajax-search' %}" id="search-form">
最终在我的 script.js 中我做到了:
var form = $('#search-form');
$.ajax({
type: 'POST',
url: $(form).attr('action'),
dataType: 'json',
data : form.serialize(),
success: function(data) {
/*stuff*/
}
});
如果在 django 1.5 中有更好的方法可以做到这一点,我想知道。
编辑:顺便说一下,当 URL 有参数时,这很痛苦。
于 2013-06-03T14:30:38.393 回答
0
在 urls.py 中用于 Ajax 请求将 url 移动到“模式”
urlpatterns = patterns('',
# urls for Ajax etc
)
urlpatterns += i18n_patterns('',
# sites urls
)
于 2013-06-03T13:46:01.963 回答