--- a/web/lib/django/db/models/options.py Wed May 19 17:43:59 2010 +0200
+++ b/web/lib/django/db/models/options.py Tue May 25 02:43:45 2010 +0200
@@ -1,9 +1,5 @@
import re
from bisect import bisect
-try:
- set
-except NameError:
- from sets import Set as set # Python 2.3 fallback
from django.conf import settings
from django.db.models.related import RelatedObject
@@ -21,7 +17,7 @@
DEFAULT_NAMES = ('verbose_name', 'db_table', 'ordering',
'unique_together', 'permissions', 'get_latest_by',
'order_with_respect_to', 'app_label', 'db_tablespace',
- 'abstract', 'managed', 'proxy')
+ 'abstract', 'managed', 'proxy', 'auto_created')
class Options(object):
def __init__(self, meta, app_label=None):
@@ -47,6 +43,7 @@
self.proxy_for_model = None
self.parents = SortedDict()
self.duplicate_targets = {}
+ self.auto_created = False
# To handle various inheritance situations, we need to track where
# managers came from (concrete or abstract base classes).
@@ -93,7 +90,7 @@
# Any leftover attributes must be invalid.
if meta_attrs != {}:
- raise TypeError, "'class Meta' got invalid attribute(s): %s" % ','.join(meta_attrs.keys())
+ raise TypeError("'class Meta' got invalid attribute(s): %s" % ','.join(meta_attrs.keys()))
else:
self.verbose_name_plural = string_concat(self.verbose_name, 's')
del self.meta
@@ -103,11 +100,11 @@
self.db_table = "%s_%s" % (self.app_label, self.module_name)
self.db_table = truncate_name(self.db_table, connection.ops.max_name_length())
-
def _prepare(self, model):
if self.order_with_respect_to:
self.order_with_respect_to = self.get_field(self.order_with_respect_to)
self.ordering = ('_order',)
+ model.add_to_class('_order', OrderWrt())
else:
self.order_with_respect_to = None
@@ -273,7 +270,7 @@
for f in to_search:
if f.name == name:
return f
- raise FieldDoesNotExist, '%s has no field named %r' % (self.object_name, name)
+ raise FieldDoesNotExist('%s has no field named %r' % (self.object_name, name))
def get_field_by_name(self, name):
"""
@@ -329,8 +326,6 @@
cache[f.name] = (f, model, True, True)
for f, model in self.get_fields_with_model():
cache[f.name] = (f, model, True, False)
- if self.order_with_respect_to:
- cache['_order'] = OrderWrt(), None, True, False
if app_cache_ready():
self._name_map = cache
return cache
@@ -487,4 +482,3 @@
Returns the index of the primary key field in the self.fields list.
"""
return self.fields.index(self.pk)
-