Hi all :-)

I'd like to archive some data.

I did that :

class AbstractDataModel(models.Model):
xxx

class Meta:
        abstract = True


def __iter__(self):

        return iter([self.xxx, self.yyy, self.zzz, self.aaa,
            self.qqq, self.mode_bbb])


class DataModel(DataModel):

pass


class DataModelArchive(DataModel):
    # 
https://stackoverflow.com/questions/21699707/python-how-to-copy-all-attibutes-from-base-class-to-derived-one
    def __init__(self, source=None):
        if source is not None:
            self.__dict__.update(source.__dict__)


But when I want to access data in DataModelArchive, like 
DataModelArchive.objects.all() for example,
I get 

Traceback (most recent call last):
  File "/home/.../tests.py", line 1090, in test_archive
    print(DataModelArchive.objects.all())
  File 
"/home/.../venv/lib/python3.6/site-packages/django/db/models/query.py", 
line 248, in __repr__
    data = list(self[:REPR_OUTPUT_SIZE + 1])
  File 
"/home/.../venv/lib/python3.6/site-packages/django/db/models/query.py", 
line 272, in __iter__
    self._fetch_all()
  File 
"/home/.../venv/lib/python3.6/site-packages/django/db/models/query.py", 
line 1179, in _fetch_all
    self._result_cache = list(self._iterable_class(self))
  File 
"/home/.../venv/lib/python3.6/site-packages/django/db/models/query.py", 
line 63, in __iter__
    obj = model_cls.from_db(db, init_list, row[model_fields_start:
model_fields_end])
  File "/home/.../lib/python3.6/site-packages/django/db/models/base.py", 
line 507, in from_db
    new = cls(*values)
TypeError: __init__() takes from 1 to 2 positional arguments but 11 were 
given

What am I doing wrong ?

Thx

-- 
You received this message because you are subscribed to the Google Groups 
"Django users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/django-users.
To view this discussion on the web visit 
https://groups.google.com/d/msgid/django-users/42c0ac75-5255-4573-95cc-097f8b61fe17%40googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to