Django学习笔记(四)Django使用操作数据库
来源:互联网 发布:曲面软件 编辑:程序博客网 时间:2024/05/22 01:38
1.增加(修改)操作:
urls中增加insert入口:
url(r'^blog/db/insert', 'blog.views.insert'),
views中增加insert方法:
def insert(req): #way_1 user1 = Users() user1.name = 'sid' user1.sex = 'f' user1.save() # way_2 user = Users(name='tom',sex='f') user.save() # way_3 user2 = Users.objects.create(name='lilei',sex='f') print 'insert:'+user2.name #update Users.objects.filter(name='sid').update(sex='m') return render_to_response('db.html',{'user':user})
2.删除操作:
urls中增加删除入口:
url(r'^blog/db/delete', 'blog.views.delete'),views中增加删除模块:
def delete(req): #way_1 Users.objects.filter(name='lilei').delete() return render_to_response('db.html',{'user':''})
3.查询操作:
urls中增加查询入口:
url(r'^blog/db/select', 'blog.views.select'),views中增加查询模块:
def select(req): users = Users.objects.all() for user in users: print 'all:'+user.name users = Users.objects.filter(name='sid') for user in users: print 'filter:'+str(user.id)+'_'+user.name users = Users.objects.get(id=16) print 'get:'+users.name return render_to_response('db.html',{'users':users})
4.多对一关系:
class Users(models.Model): sex_choices=( ("f","famale"), ("m","male"), ) name = models.CharField(max_length=30) sex = models.CharField(max_length=1,choices=sex_choices) def __unicode__(self): return self.name class Blog(models.Model): name = models.CharField(max_length=30) #many to one user = models.ForeignKey(Users) def __unicode__(self): return self.namepython中多对一关系,定义好model之后,同步数据库:python manage.py syncdb;会在多的一端生成对应一的外键
查询时:
blog.user
blog.user_id
user.blog_set.all()
5.多对多关系:
class Author(models.Model): name = models.CharField(max_length=30) def __unicode__(self): return self.nameclass Book(models.Model): name = models.CharField(max_length=30) # many to many authors = models.ManyToManyField(Author) def __unicode__(self): return self.name
python中多对多关系,定义好model之后,同步数据库:python manage.py syncdb;会生成一张中间表用于存放两者的id
查询时:
book.authors_set.all()
author.book_set.all()
增加:
author.book_set.add(book)author.book_set.create(book(name='python'))
0 0
- Django学习笔记(四)Django使用操作数据库
- Django学习笔记(三)Django使用admin管理界面来操作mysql数据库
- Django学习笔记(四)
- Django 学习笔记(四)
- Django学习笔记5-玩转API-Django数据库操作
- Django数据库操作笔记
- Django学习笔记3-数据库操作
- Django 学习笔记(七)数据库基本操作(增查改删)
- Django 学习笔记(七)数据库基本操作(增查改删)
- Django 学习笔记(七)数据库基本操作(增查改删)
- Django(四)数据库
- Django使用Python操作数据库 --Django 1.8.2 文档(中文)部分笔记
- Django学习笔记(二)Django使用template
- Django学习4:操作数据库
- Django使用表单操作数据库
- Django学习笔记-数据库配置
- Django学习笔记(五)Django传参
- Django学习笔记(三)--Django超链接
- 勾股定理 (公式转换) 三个数互质(公式)
- 主程序和子程序 分配新指针
- Hdu3172 - Virtual Friends - 并查集
- windows下eclipse+cdt+MinGW搭建C开发环境
- 20140801收盘小结
- Django学习笔记(四)Django使用操作数据库
- 图像的腐蚀原理
- Hdu1075 - What Are You Talking About - 字典树
- Example of Single Pass Clustering Technique
- hdu2680(邻接表+dij)
- POJ2503 - Babelfish - 字典树
- 0803学习
- 阿拉伯的误读与本相 妇女只能穿黑袍?
- 最高法院不予核准受暴杀佳耦女李彦死刑判决