V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐学习书目
Learn Python the Hard Way
Python Sites
PyPI - Python Package Index
http://diveintopython.org/toc/index.html
Pocoo
值得关注的项目
PyPy
Celery
Jinja2
Read the Docs
gevent
pyenv
virtualenv
Stackless Python
Beautiful Soup
结巴中文分词
Green Unicorn
Sentry
Shovel
Pyflakes
pytest
Python 编程
pep8 Checker
Styles
PEP 8
Google Python Style Guide
Code Style from The Hitchhiker's Guide
ekko
V2EX  ›  Python

关于 Python 的 class.objects.filter()

  •  
  •   ekko · 2017-05-05 23:40:55 +08:00 · 2842 次点击
    这是一个创建于 2760 天前的主题,其中的信息可能已经有所发展或是发生改变。

    使用 redisco 时发现 objects 这个类是从哪继承来的?求解惑

    from redisco import models
    
    class Person(models.Model):
        name = models.Attribute(required=True)
        created_at = models.DateTimeField(auto_now_add=True)
        fave_colors = models.ListField(str)
    
    person = Person(name="nama")
    person.save()
    
    abc = Person.objects.filter(name = "nama")[0]
    print abc.name
    
    
    dikT
        1
    dikT  
       2017-05-06 09:59:26 +08:00 via Android
    这是 django.很多人都说,我们应该知其原理,但是我觉得,你应该先会使它,扯别的都 tm 卵用
    PythonAnswer
        2
    PythonAnswer  
       2017-05-06 12:50:48 +08:00
    黄字 models.Model
    PythonAnswer
        3
    PythonAnswer  
       2017-05-06 12:54:51 +08:00
    Model.objects 如果不自定义, django 会默认分配你一个 objects = models.Manager()
    wwqgtxx
        4
    wwqgtxx  
       2017-05-06 18:36:12 +08:00
    @PythonAnswer @dikT 请仔细看,这是 redisco,只不过它是模仿了 django 的接口而已
    根本实现一般是通过一个 metaclass 实现的,那个 metaclass 是加在 models.Model 上被连带继承了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2642 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 00:32 · PVG 08:32 · LAX 16:32 · JFK 19:32
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.