django前端ajax提交数据被拒绝

方案一:

在form标签中加入标签{% csrf_token %}

ajax提交数据增加csrftoken信息

var data={
‘obj1’:$(‘#obj1’).val(),
‘obj2’:$(‘#obj2’).val(),
‘csrfmiddlewaretoken’:$(‘input[name=”csrfmiddlewaretoken”]’).val()
}

$.ajax({
URL:”,
type:’POST’,
data:data,
success:function(res){
console.log(res);
}
})

方案二:

在form标签中加入标签{% csrf_token %}

ajax headers中csrftoken信息

var data={
‘obj1’:$(‘#obj1’).val(),
‘obj2’:$(‘#obj2′).val(),
}

$.ajax({
URL:”,
type:’POST’,
data:data,
headers:{“X_CSRFToken”:$(‘input[name=”csrfmiddlewaretoken”]’).val(),
success:function(res){
console.log(res);
}
})

另外:
{% csrf_token %}可以用jquery.cookie.js代替,在页面引入jquery.min.js与jquery.cookie.js,$(‘input[name=”csrfmiddlewaretoken”]’).val()替换为
$.cookie(‘csrftoken’)

Django Model ORM操作

# 增
#
# 1.models.Tb1.objects.create(c1=’xx’)

# 2.dict={c1:’xx’}
# models.Tb1.objects.create(dict)

# 3.obj = models.Tb1(c1=’xx’)
# obj.save()

# 4.obj = models.Tb1()
# obj.c1=’xx’
# obj.save()

# 查
#
# models.Tb1.objects.get(id=123) # 获取单条数据,不存在则报错(不建议)
# models.Tb1.objects.all() # 获取全部
# models.Tb1.objects.filter(name=’seven’) # 获取指定条件的数据
# models.Tb1.objects.exclude(name=’seven’) # 获取指定条件外数据

# 删
#
# models.Tb1.objects.filter(name=’seven’).delete() # 删除指定条件的数据

# 改
# models.Tb1.objects.filter(name=’seven’).update(gender=’0′) # 将指定条件的数据更新,均支持 **kwargs
# obj = models.Tb1.objects.get(id=1)
# obj.c1 = ‘111’
# obj.save() # 修改单条数据

继续阅读“Django Model ORM操作”

bootstrap图标选择器:Bootstrap-icon-picker优化

bootstrap自带的图标选择器Bootstrap-icon-picker 源码地址 很好用,但是用一个缺点,就是没有预览效果,只显示图标代码。如下图

其实input右边的按钮可以完全利用起来,如图:

我们可以修改一下js文件,让这个按钮实时显示所选的图标效果。

继续阅读“bootstrap图标选择器:Bootstrap-icon-picker优化”

FreeBSD ee编辑器命令

Ctrl> + [  <ESC> 键 显示主选单。

<Ctrl> + o 输入 ASCII code,例如输入 65 就会显示 A

<Ctrl> + u 跳到档案结尾。

<Ctrl> + t 跳到档案开头。

<Ctrl> + c 输入指令。在按了 Ctrl+c 后,上方选单会出现命令说明,例如您可以直接输入数字,表示将光标移到某一行。

继续阅读“FreeBSD ee编辑器命令”