django对layui中csrf_token处理方式及其它一些处理

第一:由于layui官方是没有csrf_token处理机制,所以,在使用layui中post请求,请不要按layui官方提供的两种方法进行设置

官方设置如下:

table.render({
  elem: '#demp'
  ,url: '/ceshi/'
  ,method:'post'
  ,headers: {token: 'sasasas'}
  }
  //,…… //其他参数
});  
或者
table.render({
  elem: '#demp'
  ,url: '/ceshi/'
  ,method:'post'
  ,where: {token: 'sasasas', id: 123}  
  }
  //,…… //其他参数
}); 

 注意:按以上设置是永远都用不了

需要把参数改为django机制的csrfmiddlewaretoken机制,并且需要在静态的html中插入{% csrf_token %}

首先在js中获取
var token_value = $('[name="csrfmiddlewaretoken"]').val();
table.render({
  elem: '#demp'
  ,url: '/ceshi/'
  ,method:'post'
  ,headers: {csrfmiddlewaretoken: token_value}
  }
  //,…… //其他参数
});  
或者
table.render({
  elem: '#demp'
  ,url: '/ceshi/'
  ,method:'post'
  ,where: {csrfmiddlewaretoken: token_value, id: 123}  
  }
  //,…… //其他参数
}); 

 第二:layui中对表单中select赋值的处理

 1.首先需要引入form,对于直行赋值,并重新加载,

 

layui.use('form', function() {
    var form = layui.form;
    $("#interest_glocal").val("写作");  #对value直接赋值
    form.render();    #赋值完,必须重新加载,这个一步很重要
   });

 

posted @ 2019-06-05 20:21  代码家园  阅读(1445)  评论(0编辑  收藏  举报