The following class is kinda weird: class DataModel(DataModel): A class which inherits itself???
On Tuesday, June 26, 2018 at 11:31:24 AM UTC+2, [email protected] wrote: > > 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/39aca8ec-6d6c-4e33-8a91-4dadda6620b2%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.

