Django

Code

Changeset 2196

Show
Ignore:
Timestamp:
01/30/06 19:13:10 (3 years ago)
Author:
adrian
Message:

magic-removal: Changed Manager so that it's not a subclass of QuerySet?, and implemented proxy methods to the QuerySet? methods it needs.

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • django/branches/magic-removal/django/db/models/manager.py

    r2194 r2196  
    2121dispatcher.connect(ensure_default_manager, signal=signals.class_prepared) 
    2222 
    23 class Manager(QuerySet): 
     23class Manager(object): 
    2424    # Tracks each time a Manager instance is created. Used to retain order. 
    2525    creation_counter = 0 
     
    3636        Manager.creation_counter += 1 
    3737        self.model = None 
    38         self._use_cache = False 
    3938 
    4039    def _prepare(self): 
     
    5554        return self.get_object(*args, **kwargs) 
    5655 
     56    ####################### 
     57    # PROXIES TO QUERYSET # 
     58    ####################### 
     59 
    5760    def all(self): 
    5861        # Returns a caching QuerySet. 
    5962        return QuerySet(self.model) 
     63 
     64    def count(self): 
     65        return QuerySet(self.model).count() 
     66 
     67    def dates(self, *args, **kwargs): 
     68        return QuerySet(self.model).dates(*args, **kwargs) 
     69 
     70    def delete(self, *args, **kwargs): 
     71        return QuerySet(self.model).delete(*args, **kwargs) 
     72 
     73    def distinct(self, *args, **kwargs): 
     74        return QuerySet(self.model).distinct(*args, **kwargs) 
     75 
     76    def extra(self, *args, **kwargs): 
     77        return QuerySet(self.model).extra(*args, **kwargs) 
     78 
     79    def get(self, *args, **kwargs): 
     80        return QuerySet(self.model).get(*args, **kwargs) 
     81 
     82    def filter(self, *args, **kwargs): 
     83        return QuerySet(self.model).filter(*args, **kwargs) 
     84 
     85    def in_bulk(self, *args, **kwargs): 
     86        return QuerySet(self.model).in_bulk(*args, **kwargs) 
     87 
     88    def order_by(self, *args, **kwargs): 
     89        return QuerySet(self.model).order_by(*args, **kwargs) 
     90 
     91    def select_related(self, *args, **kwargs): 
     92        return QuerySet(self.model).select_related(*args, **kwargs) 
     93 
     94    def values(self, *args, **kwargs): 
     95        return QuerySet(self.model).values(*args, **kwargs) 
     96 
     97    ################# 
     98    # OTHER METHODS # 
     99    ################# 
    60100 
    61101    def add(self, **kwargs): 
  • django/branches/magic-removal/django/db/models/query.py

    r2194 r2196  
    7777        self._limit = None           # LIMIT clause 
    7878        self._result_cache = None 
    79         self._use_cache = True 
    8079 
    8180    ######################## 
     
    315314 
    316315    def _get_data(self): 
    317         if self._use_cache: 
    318             if self._result_cache is None: 
    319                 self._result_cache = list(self.iterator()) 
    320             return self._result_cache 
    321         else: 
    322             return list(self.iterator()) 
     316        if self._result_cache is None: 
     317            self._result_cache = list(self.iterator()) 
     318        return self._result_cache 
    323319 
    324320    def _get_sql_clause(self, allow_joins):