重定向
1.1
2
3
4# 类视图表单跳转url
reverse_lazy('news:manage_list')+'?type='+article_type
# 方法视图跳转url
HttpResponseRedirect(reverse('news:manage_list')+'?type='+article_type)
由于是一个相对路径所以可以拼接字符串
2.1
2# 跳转url传入关键字参数
HttpResponseRedirect(reverse('home:banner_index', kwargs={'type': type}))
3.1
redirect('house:manage_index')
HttpResponseRedirect第一个参数只能是一个url, , redirect更灵活, 可接受view,model,和url
4.1
return render(self.request, 'charge/preview.html', locals())
类视图里get方法必须返回一个url
1 return render(request, self.template_name, context)
1 | return render_to_response(self.get_context_data(form=form)) |
1 | return render_to_response(template_name,{'message_list': message_list, }, |
5.1
return redirect(request.GET.get('next', reverse('account:index')))
1 | # post.ajax |
1 | $('#create').click(function () { |
JsonResponse返回给前台json数据, if (data.name) {window.location.reload()}else{…}; 如果得到name数据则加载页面没有得到即报错
如果url为空, 则是在当前类视图下post方法里处理
? :HttpResponse(json.dumps({"re_statue": 1}))
1
2
3
4
5
6
7
8
9
10
11
12
13
14 if(count==0){
var yes = function (val, index, elem) {
var data= {"check_status":1,"object_id": object_id};
$.post(url, data, function (data) {
if (data.status == 1) {
showAlertMsg("操作成功", 6);
location.href = '{% url 'user:manage_developer_verify' %}';
} else {
showAlertMsg("后台错误", 5);
}
});
};
showYesorNo("是否通过审核", yes);
}else{...}另一种ajax.post写法
如果有个数据需要在很多模板页运用,可自定义一个模板页标签1
2
3
4from django.template import Library
register = Library()
register.tag('inbox_count', do_print_inbox_count)
1 | {% inbox_count as my_num %} |