V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
推荐学习书目
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 · May 5, 2017 · 3334 views
    This topic created in 3290 days ago, the information mentioned may be changed or developed.

    使用 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  
       May 6, 2017 via Android
    这是 django.很多人都说,我们应该知其原理,但是我觉得,你应该先会使它,扯别的都 tm 卵用
    PythonAnswer
        2
    PythonAnswer  
       May 6, 2017
    黄字 models.Model
    PythonAnswer
        3
    PythonAnswer  
       May 6, 2017
    Model.objects 如果不自定义, django 会默认分配你一个 objects = models.Manager()
    wwqgtxx
        4
    wwqgtxx  
       May 6, 2017
    @PythonAnswer @dikT 请仔细看,这是 redisco,只不过它是模仿了 django 的接口而已
    根本实现一般是通过一个 metaclass 实现的,那个 metaclass 是加在 models.Model 上被连带继承了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Solana   ·   3534 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 47ms · UTC 10:37 · PVG 18:37 · LAX 03:37 · JFK 06:37
    ♥ Do have faith in what you're doing.