Python Django 开发 3 数据库CURD

上一篇表建好后开始对数据进行CURD操作

dos输入:

>>>python manage.py shell

以下的命令都是在shell中测试

(C)增:

 >>>import myLesson import Blog
>>>b = Blog(name = 'Frist Blog', tagline = 'All')
>>>b.save()
>>>b.id
1

操作都是以对象.save()的方式来保存到数据库,用官方的话是:

To create an object, instantiate it using keyword arguments to the model class, then call save() to save it to the database.

机器翻译:创建一个对象,使用关键字参数模型类的实例化它,然后调用save()来将其保存到数据库中。

save()方法是没有返回值的,所以最后一个输出自增的ID编号

如果需要直接写入,不使用save方法,如下:

  Blog.objects.create(name = 'Frist Blog', tagline = 'All')

(U) 改:

 >>>b.name
Frist Blog
>>>b.name = 'New name'
>>>b.save()
>>>b.name
New name

另一种直接修改的方法:

  Blog.objects.filter(id = 1).update(name = 'New name')

(R)查:

 >>>nb = Blog.objects.get(id = 1)
>>>nb.name
u'New name'

get方法只用于查询返回只有一条数据的情况,如果没有返回值或有多个返回值,就会报错,这时候可以使用filter函数,返回一个QuerySet对象,类似结果集对象

  nb = Blog.objects.filter(id=1)

查询所有:Blog.objects.all()

排序:Blog.objects.all().order_by('id')  ,这样是升序,降序字段前面加个“-”号,order_by('-id'), 根据多个字段排序:**.order_by('id','name')

限定条数:Blog.objects.all().order_by('id')[0:10]  ,因为all这样返回的是列表,所以可以用Python中的列表处理函数来处理

(D)删:

 >>>nb.delete()

数据已删掉,但nb对象还保存值

然而,这些是最基本的用法,光知道这些没有一点卵用,我研究研究先

上一篇:关联参数(&的用法)


下一篇:Bootstrap入门(九)组件3:按钮组