{"id": 419, "created": "2005-08-26 04:23:46", "changetime": "2006-10-22 16:30:00", "last_pulled_from_trac": "2022-03-06 03:20:39.685299", "stage": "Unreviewed", "status": "closed", "component": "Metasystem", "type": "enhancement", "severity": "enhancement", "version": null, "resolution": "duplicate", "summary": "Create meta.AbstractModel", "description": "{{{\r\n#!python\r\n\r\nclass BaseModel(meta.Model):\r\n foo = meta.CharField(maxlength=200)\r\n\r\nclass FirstChild(BaseModel):\r\n bar = meta.CharField(maxlength=10)\r\n\r\nclass SecondChild(BaseModel):\r\n bar = meta.CharField(maxlength=10)\r\n}}}\r\n\r\nIn this example, {{{BaseModel}}} only exists as an \"abstract class\" -- its only purpose is to be extended. We don't want to install SQL for it, and we don't want it to be available via the API. So we could introduce a {{{meta.AbstractModel}}} for models that serve this purpose.", "owner": "adrian", "reporter": "adrian", "keywords": null, "easy": 0, "has_patch": 0, "needs_better_patch": 0, "needs_tests": 0, "needs_docs": 0, "ui_ux": 0}