zoukankan      html  css  js  c++  java
  • django网站搭建常用的一些代码

    from functools import wraps
    def
    check_user_login(func): @wraps(func) def return_wrapper(request, *args, **kwargs): if not request.user.is_authenticated(): return render_to_response('xxx.html') else: return func(request, *args, **kwargs) return return_wrapper

    该函数用来检查用户是否登录,是个装饰器,使用了wraps装饰器来保证被装饰的函数函数名和属性不发生变化。使用is_authenticated()函数来判断是否登录,这是django自带的函数。如果没有登录返回一个xxx模板,可以修改。

    from functools import wraps
    def check_method(func):
        @wraps(func)
        def returned_wrapper(request, *args, **kwargs):
            if request.method != 'POST':
                err = u'提交方式有误'
                return render_to_response('err.html', {"err": err})
            else:
                return func(request, *args, **kwargs)
        return returned_wrapper

    该函数用来检查用户提交的方式是否为POST,可能作用不大。

    from django.shortcuts import HttpResponse
    import json
    def xxx():
        result = dict()
        try:
            //TODO
            result['ret'] = 0
            result['status'] = 'success'
        except Exception, e:
            result['ret'] = 10000
            result['status'] = 'failed'
            result['message'] = str(e)
        return HttpResponse(json.dumps(result), content_type="application/json")

    该函数用来接收前端的jquery请求,返回一个json对象,根据ret来判断是否成功,经常同下面的jquery一起使用。

    function ajax(type, url, datas, msg) {
        $.ajax({
            type: type,
            url: url,
            data: datas,
            async: false,
            success: function (data, status) {
                if (data.ret == 0) {
                    alert(msg+'成功!');
              location.reload()
    } else { alert(msg+"失败!失败原因:" + data.message); } }, error: function (data) { alert(msg+"错误!错误原因:" + data); } }); }

    一个普通的ajax请求,封装到ajax函数中,省的每次都要复制粘贴很麻烦,使用异步ajax,在执行该ajax请求是其他请求可以继续执行。

  • 相关阅读:
    网站统计中的数据收集原理及实现
    启动hadoop报ERROR org.apache.hadoop.hdfs.server.namenode.FSImage: Failed to load image from FSImageFile
    淘宝(大数据库应用)--转载
    MapReduce作业的map task和reduce task调度参数
    Spark和Hadoop作业之间的区别
    分析MapReduce执行过程
    MapReduce框架Partitioner分区方法
    LVS+keepalived实现负载均衡
    Tomcat 详解
    linux Tomcat restart脚本简单版
  • 原文地址:https://www.cnblogs.com/lgh344902118/p/6897628.html
Copyright © 2011-2022 走看看