元数据Meta 固定的格式meta:固定的参数: ording:按那个数据字段排序 verbose_name:数据表的别名(一个直观的名字) abtract=True:抽象类 db_table:设置生成的表名。默认为类名 verbose_name_plural:数据表的复数名 在Django中,继承并不继承父类的Meta元数据 数据库查询操作 1、保存数据 1)b=Blog(......) b.save() 2)c=Blog.objects.creats(......) 注意:关键字objects xxx.objects.create创建一条数据 xxx.objects.get 查询一个数据 xxx.objects.get_or_create 查询一条数据如果没有则创建 2、检索所有的对象 xxx.objects.all() xxx.objects.filter(name='xxx') 返回所有符合条件的结果 1)切片查询 all()[:2] 返回前两个结果 3、链式检索 上述filter的结果依然可以继续调用filter方法 xxx.objects.get(name='xxx').filter(age=18)返回名字‘xxx’age=18的数据 查询操作时的(filter、get)参数。 pk=1:主键查询也就是id=1 4、删除操作。delete()方法。。xxx.delete() 5、复制数据 先把一个数据实例的pk值设置为None,再重新保存 c=Blog.objects.get(name='xxx') c.pk=None c.save() 这样并不是真得把数据实例的id设置为None。而是相当于copy。当保存时就被复制了 6、更新操作update Blog.objects.get(name='xxx').update(name='ooo') 返回影响到的数据条数
7、exclude(name='xxx')反向查询,查询所有不符合条件的数据
7、foreignkey一对多字段的反向查询(这个一拥有多少个绑定在自己身上的数据)
【一实例】.【多模型】__set.all()这样的查询语句
该语句返回一个结果集,依然可以用Filter、get等查询语句检索