标签:
首先定义model如下.
class UserInfo(models.Model):
username=models.CharField(max_length=50,null=True,primary_key=False,db_index=True) #可以为空,不是主键,创建索引
password=models.CharField(max_length=50,error_messages={"invalid":"出错"}) #定义出错信息
gender=models.BooleanField(default=False)
typeId=models.ForeignKey("UserType")
createdate=models.DateTimeField(auto_now=True) #自动赋值当前时间
class userType(models.Model):
TYPE_CHOICE=( #不走数据库,直接在内存里那表
(u"1",u"普通用户"),
(u"2",u"高级用户"),
(u"3",u"管理员")
)
type=models.CharField(max_length=2,choices=TYPE_CHOICE)
然后再views.py中定义增删改查的函数,并在urls.py中设置好访问路由。
添加数据有两种方式。
def add(request,name):
User.objects.create(name=name) #向数据库中添加name
return HttpResponse("<h1>{0}<h1/>".format(name))
def add(request,name):
obj=User(name=name)
obj.save()
return HttpResponse("<h1>{0}<h1/>".format(name))
def delete(request,id):
User.objects.get(id=id).delete() #删除一条指定id的数据,如果同时存在多条会报错
return HttpResponse("<h1>已经删除{0}<h1/>".format(id))
def delete(request,gender):
User.objects.filter(gender=True).delete() #删除所有指定性别的数据
return HttpResponse("<h1>删除成功<h1/>")
def delete(request,id):
User.objects.all().delete() #删除所有数据
return HttpResponse("<h1>已经删除<h1/>")
def update(request,id,name):
obj=User.objects.get(id=id) #如果获取不到或者获取多条会报错
obj.name=name
obj.save()
return HttpResponse("<h1>{0},{1}<h1/>".format(name, id))
def update(request,id,name):
User.objects.filter(id=id).update(name=name) #更新所有指定id的数据
return HttpResponse("<h1>{0},{1}<h1/>".format(name, id))
def searchAll(request):
obj=User.objects.all()
sql=obj.query #可以获取对应的sql语句
data=obj.values() #返回包含所有词条的list
onlyone=User.objects.get(name="wer") #查询单条数据,如果多条或者没有就会报错
many=User.objects.filter(name="wer")[0:2] #查询多条数据,并输出开头两条
like=User.objects.filter(name__contains="w") #模糊查询包含1的数据
gtage=User.objects.filter(age__gt=7) #查询年龄大于7的数据
orderName=User.objects.filter(name="wer").order_by("id") #对查询结果id字段进行排序
return HttpResponse("<p>{0}<p/><p>{1}<p/><p>{2}<p/>".format(sql, data,orderName.values()))
在数据库操作完成之后,不要忘记更新数据库。控制台命令如下
python manage.py makemigrations appname
python manage.py migrate
本文地址:http://blog.csdn.net/a359680405/article/details/51361562
上一篇:Python网络编程05—-django与数据库的交互
下一篇:Python网络编程07—-模版
Python网络编程06----django数据库的增删改查
标签:
原文地址:http://blog.csdn.net/a359680405/article/details/51361562