Loading django/db/models/base.py +0 −26 Original line number Diff line number Diff line Loading @@ -237,32 +237,6 @@ class Model(object): raise TypeError, "'%s' is an invalid keyword argument for this function" % kwargs.keys()[0] dispatcher.send(signal=signals.post_init, sender=self.__class__, instance=self) def from_sequence(cls, values): """ An alternate class constructor, primarily for internal use. Creates a model instance from a sequence of values (which corresponds to all the non-many-to-many fields in creation order. If there are more fields than values, the remaining (final) fields are given their default values. ForeignKey fields can only be initialised using id values, not instances, in this method. """ dispatcher.send(signal=signals.pre_init, sender=cls, args=values, kwargs={}) obj = Empty() obj.__class__ = cls field_iter = iter(obj._meta.fields) for val, field in izip(values, field_iter): setattr(obj, field.attname, val) for field in field_iter: setattr(obj, field.attname, field.get_default()) dispatcher.send(signal=signals.post_init, sender=cls, instance=obj) return obj from_sequence = classmethod(from_sequence) def __repr__(self): return smart_str(u'<%s: %s>' % (self.__class__.__name__, unicode(self))) Loading django/db/models/query.py +2 −2 Original line number Diff line number Diff line Loading @@ -164,7 +164,7 @@ class QuerySet(object): obj, _ = get_cached_row(self.model, row, index_start, max_depth, requested=requested) else: obj = self.model.from_sequence(row[index_start:]) obj = self.model(*row[index_start:]) for i, k in enumerate(extra_select): setattr(obj, k, row[i]) yield obj Loading Loading @@ -655,7 +655,7 @@ def get_cached_row(klass, row, index_start, max_depth=0, cur_depth=0, restricted = requested is not None index_end = index_start + len(klass._meta.fields) obj = klass.from_sequence(row[index_start:index_end]) obj = klass(*row[index_start:index_end]) for f in klass._meta.fields: if (not f.rel or (not restricted and f.null) or (restricted and f.name not in requested) or f.rel.parent_link): Loading Loading
django/db/models/base.py +0 −26 Original line number Diff line number Diff line Loading @@ -237,32 +237,6 @@ class Model(object): raise TypeError, "'%s' is an invalid keyword argument for this function" % kwargs.keys()[0] dispatcher.send(signal=signals.post_init, sender=self.__class__, instance=self) def from_sequence(cls, values): """ An alternate class constructor, primarily for internal use. Creates a model instance from a sequence of values (which corresponds to all the non-many-to-many fields in creation order. If there are more fields than values, the remaining (final) fields are given their default values. ForeignKey fields can only be initialised using id values, not instances, in this method. """ dispatcher.send(signal=signals.pre_init, sender=cls, args=values, kwargs={}) obj = Empty() obj.__class__ = cls field_iter = iter(obj._meta.fields) for val, field in izip(values, field_iter): setattr(obj, field.attname, val) for field in field_iter: setattr(obj, field.attname, field.get_default()) dispatcher.send(signal=signals.post_init, sender=cls, instance=obj) return obj from_sequence = classmethod(from_sequence) def __repr__(self): return smart_str(u'<%s: %s>' % (self.__class__.__name__, unicode(self))) Loading
django/db/models/query.py +2 −2 Original line number Diff line number Diff line Loading @@ -164,7 +164,7 @@ class QuerySet(object): obj, _ = get_cached_row(self.model, row, index_start, max_depth, requested=requested) else: obj = self.model.from_sequence(row[index_start:]) obj = self.model(*row[index_start:]) for i, k in enumerate(extra_select): setattr(obj, k, row[i]) yield obj Loading Loading @@ -655,7 +655,7 @@ def get_cached_row(klass, row, index_start, max_depth=0, cur_depth=0, restricted = requested is not None index_end = index_start + len(klass._meta.fields) obj = klass.from_sequence(row[index_start:index_end]) obj = klass(*row[index_start:index_end]) for f in klass._meta.fields: if (not f.rel or (not restricted and f.null) or (restricted and f.name not in requested) or f.rel.parent_link): Loading