{"id":15568627,"url":"https://github.com/jayvdb/djsommo","last_synced_at":"2025-04-05T04:41:57.334Z","repository":{"id":57422883,"uuid":"273005562","full_name":"jayvdb/djsommo","owner":"jayvdb","description":"Django safe optional model Meta options","archived":false,"fork":false,"pushed_at":"2020-06-17T18:18:16.000Z","size":5,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-03-10T22:17:37.507Z","etag":null,"topics":["django-models"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jayvdb.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2020-06-17T15:06:55.000Z","updated_at":"2020-06-17T18:18:19.000Z","dependencies_parsed_at":"2022-08-27T10:20:29.743Z","dependency_job_id":null,"html_url":"https://github.com/jayvdb/djsommo","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jayvdb%2Fdjsommo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jayvdb%2Fdjsommo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jayvdb%2Fdjsommo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jayvdb%2Fdjsommo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jayvdb","download_url":"https://codeload.github.com/jayvdb/djsommo/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247289393,"owners_count":20914464,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["django-models"],"created_at":"2024-10-02T17:19:44.506Z","updated_at":"2025-04-05T04:41:57.315Z","avatar_url":"https://github.com/jayvdb.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# djsommo\n\nDjango safe optional model `Meta` options.\n\nDjango doesn't support adding third-party fields to the model class Meta.\nIt raises an exception if one is encountered.\n\nMany installable apps inject a model `Meta` option name into Django\nduring initialisation, after which it is safe to use them.\n\nHowever what happens if the installable app isnt working for some reason,\nand you want to disable it.\n\nThen you need to remove all use of the `Meta` option from the models.\n\nThis app provides a `Meta` class which detects unknown options,\nissues a warning and discards them before Django can raise an exception.\n\n## Usage\n\nIn `models.py`\n\n```py\nfrom django.db import models\n\nfrom djsommo import SafeOptionalMeta\n\n\nclass MyModel(models.Model):\n    uuid = models.TextField()\n    ...\n    class Meta(SafeOptionalMeta):\n        unknown_option = True\n```\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjayvdb%2Fdjsommo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjayvdb%2Fdjsommo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjayvdb%2Fdjsommo/lists"}