导读:本篇文章首席CTO笔记来给大家介绍有关django里object是怎么实现的的相关内容,希望对大家有所帮助,一起来看看吧。
本文目录一览:
1、django model object 可以只取一列么2、django在读取数据库后返回的是一个对象,如何将对象中的字段(属性)读出?3、Django里面怎么实现数据库视图啊 就是虚拟表django model object 可以只取一列么
可以的,假如有一个Model叫做books,其中有id,name,code等列,如果相取其中的name列,那么可以这样写:
books.objects.values("name").
这个方法返回的是ValuesQuerySet,是QuerySet 的子类,也就是说,你可以用QuerySet里的方法。需要注意的是,返回的不是list,不要直接当list来用了。对ValuesQuerySet遍历,每一个元素是“字典”dict。
还有一个是:books.objects.values_list("name") 这个和values一样,只是返回的不是字典而是元组。
django在读取数据库后返回的是一个对象,如何将对象中的字段(属性)读出?
你用all() 返回的是一个对象列表。这样的 [obj1, obj2, ...]
使用 obj.objects.get(id=**) 这样得到的是一个对象, 或者使用 get_object_or_404(obj, id=**)
这样的话, 使用 obj.objects.get(id=**).属性名 既可以了
或者
for obj in obj.objects.all():
obj.属性名
明白了吧
Django里面怎么实现数据库视图啊 就是虚拟表
正经回答:先在数据库中建立好视图,然后django中建立对应的model。表所对应的类下面再建立一个Meta类,大致如下
class ViewModel(models.Model):
"""这个model类对应你所建立好的视图"""
class Meta(object):
"""同理,该方法可用于使用mysql中任何已有的表,不仅是视图"""
db_table = 'your_view' #显式指定表名,也就是你建立的视图的名字
managed = false #默认是ture,设成false django将不会执行建表和删表操作
# 建立字段间的映射
# 需要注意的是,必须设一个字段为主键
# 不然django会自动创建一个id字段为主键,引发错误
百度知道越来越辣鸡了,全是答非所问的。
结语:以上就是首席CTO笔记为大家介绍的关于django里object是怎么实现的的全部内容了,希望对大家有所帮助,如果你还想了解更多这方面的信息,记得收藏关注本站。