{ "info": { "author": "Aidan Lister", "author_email": "aidan@uptickhq.com", "bugtrack_url": null, "classifiers": [ "License :: OSI Approved :: MIT License", "Programming Language :: Python :: 3", "Programming Language :: Python :: 3.9", "Programming Language :: Python :: 3.10" ], "description": "# django-model-import\n\n[![PyPI version](https://badge.fury.io/py/django-model-import.svg)](https://badge.fury.io/py/django-model-import)\n[![Build Status](https://travis-ci.org/uptick/django-model-import.svg?branch=master)](https://travis-ci.org/uptick/django-model-import)\n\nDjango Model Import is a light weight CSV importer built for speed.\n\nIt uses a standard Django `ModelForm` to parse each row, giving you a familiar API to work with\nfor data validation and model instantiation. In most cases, if you already have a `ModelForm`\nfor the `ContentType` you are importing you do not need to create an import specific form.\n\nTo present feedback to the end-user running the import you can easily generate a preview\nof the imported data by toggling the `commit` parameter.\n\nIt also provides some import optimized fields for ForeignKey's, allowing preloading all\npossible values, or caching each lookup as it occurs, or looking up a model where multiple\nfields are needed to uniquely identify a resource.\n\n\n## Installation\n\n```bash\npoetry add django-model-import\n```\n\n\n## Quickstart\n\n```python\nimport djangomodelimport\n\nclass BookImporter(djangomodelimport.ImporterModelForm):\n name = forms.CharField()\n author = CachedChoiceField(queryset=Author.objects.all(), to_field='name')\n\n class Meta:\n model = Book\n fields = (\n 'name',\n 'author',\n )\n\nwith default_storage.open('books.csv', 'rb') as fh:\n data = fh.read().decode(\"utf-8\")\n\n# Use tablib\nparser = djangomodelimport.TablibCSVImportParser(BookImporter)\nheaders, rows = parser.parse(data)\n\n# Process\nimporter = djangomodelimport.ModelImporter(BookImporter)\npreview = importer.process(headers, rows, commit=False)\nerrors = preview.get_errors()\n\nif errors:\n print(errors)\n\nimportresult = importer.process(headers, rows, commit=True)\nfor result in importresult.get_results():\n print(result.instance)\n```\n\n\n## Composite key lookups\n\nOften a relationship cannot be referenced via a single unique string. For this we can use\na `CachedChoiceField` with a `CompositeLookupWidget`. The widget looks for the values\nunder the `type` and `variant` columns in the source CSV, and does a unique lookup\nwith the field names specified in `to_field`, e.g. `queryset.get(type__name=type, name=variant)`.\n\nThe results of each `get` are cached internally for the remainder of the import minimising\nany database access.\n\n```python\nclass AssetImporter(ImporterModelForm):\n site = djangomodelimport.CachedChoiceField(queryset=Site.objects.active(), to_field='ref')\n type = djangomodelimport.CachedChoiceField(queryset=AssetType.objects.filter(is_active=True), to_field='name')\n type_variant = djangomodelimport.CachedChoiceField(\n queryset=InspectionItemTypeVariant.objects.filter(is_active=True),\n required=False,\n widget=djangomodelimport.CompositeLookupWidget(source=('type', 'variant')),\n to_field=('type__name', 'name'),\n )\n contractor = djangomodelimport.CachedChoiceField(queryset=Contractor.objects.active(), to_field='name')\n```\n\n\n## Flat related fields\n\nOften you'll have a OneToOneField or just a ForeignKey to another model, but you want to be able to\ncreate/update that other model via this one. You can flatten all of the related model's fields onto\nthis importer using `FlatRelatedField`.\n\n```python\nclass ClientImporter(ImporterModelForm):\n primary_contact = FlatRelatedField(\n queryset=ContactDetails.objects.all(),\n fields={\n 'contact_name': {'to_field': 'name', 'required': True},\n 'email': {'to_field': 'email'},\n 'email_cc': {'to_field': 'email_cc'},\n 'mobile': {'to_field': 'mobile'},\n 'phone_bh': {'to_field': 'phone_bh'},\n 'phone_ah': {'to_field': 'phone_ah'},\n 'fax': {'to_field': 'fax'},\n },\n )\n\n class Meta:\n model = Client\n fields = (\n 'name',\n 'ref',\n 'is_active',\n 'account',\n\n 'primary_contact',\n )\n```\n\n## Tests\nRun tests with `python example/manage.py test testapp`\n", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "https://github.com/uptick/django-model-import", "keywords": "", "license": "MIT", "maintainer": "", "maintainer_email": "", "name": "django-model-import", "package_url": "https://pypi.org/project/django-model-import/", "platform": null, "project_url": "https://pypi.org/project/django-model-import/", "project_urls": { "Documentation": "https://github.com/uptick/django-model-import/tree/master/tests/djangoexample", "Homepage": "https://github.com/uptick/django-model-import", "Repository": "https://github.com/uptick/django-model-import" }, "release_url": "https://pypi.org/project/django-model-import/0.4.18/", "requires_dist": [ "python-dateutil (>=2.7.0,<3.0.0)", "tablib (>=3.0.0,<4.0.0)", "Django (>=3.0.0,<4.0.0)" ], "requires_python": ">=3.9,<4.0", "summary": "A Django library for importing CSVs and other structured data quickly using Django's ModelForm for validation and deserialisation into an instance.", "version": "0.4.18", "yanked": false, "yanked_reason": null }, "last_serial": 13575964, "releases": { "0.1.1": [ { "comment_text": "", "digests": { "md5": "eaa9289c33ed8f1ec2bde5d6589cdb20", "sha256": "fff389f6ad6a80f83e57c1fe30ccb8e3011aa3a534660a74968f325160871b54" }, "downloads": -1, "filename": "django-model-import-0.1.1.tar.gz", "has_sig": false, "md5_digest": "eaa9289c33ed8f1ec2bde5d6589cdb20", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9844, "upload_time": "2017-09-18T03:02:08", "upload_time_iso_8601": "2017-09-18T03:02:08.480034Z", "url": "https://files.pythonhosted.org/packages/2d/90/47cdd331e21b4fe6db44d2bfc2c9890f0af10e32f4483d365e5b3af1fc32/django-model-import-0.1.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "a12bb708e674a46d0752611ed0b3f0a7", "sha256": "6eea8a272316158b61209a4f9b90a2a4830fe32903246e2157a2b1033d6e1df8" }, "downloads": -1, "filename": "django-model-import-0.1.2.tar.gz", "has_sig": false, "md5_digest": "a12bb708e674a46d0752611ed0b3f0a7", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9194, "upload_time": "2017-11-27T04:41:18", "upload_time_iso_8601": "2017-11-27T04:41:18.893223Z", "url": "https://files.pythonhosted.org/packages/b5/04/0baf5d85db0e38cfef8f840058970d933e5f170151fe92674e7e5c7ae1d8/django-model-import-0.1.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.1.3": [ { "comment_text": "", "digests": { "md5": "fc6166d7ecdae30a1f47968f9cda7b8d", "sha256": "45d3e7417e1858a0dba83f8a17d784e94e28f4330bdd202a466e624e036a5982" }, "downloads": -1, "filename": "django-model-import-0.1.3.tar.gz", "has_sig": false, "md5_digest": "fc6166d7ecdae30a1f47968f9cda7b8d", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 9200, "upload_time": "2017-12-17T23:14:49", "upload_time_iso_8601": "2017-12-17T23:14:49.294051Z", "url": "https://files.pythonhosted.org/packages/bc/b0/50b3bb167c8c0205112318e3c058981cf4249369ce6d52d821042210b153/django-model-import-0.1.3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2": [ { "comment_text": "", "digests": { "md5": "6b2a685730bfc0050e4c6fa1ea6bbf5a", "sha256": "14aa56b60d757b2fbe6022a4501ca017f5da1b28e8745eaffe529a24fb55c91c" }, "downloads": -1, "filename": "django-model-import-0.2.tar.gz", "has_sig": false, "md5_digest": "6b2a685730bfc0050e4c6fa1ea6bbf5a", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10580, "upload_time": "2018-02-12T02:45:51", "upload_time_iso_8601": "2018-02-12T02:45:51.141720Z", "url": "https://files.pythonhosted.org/packages/4b/b1/8fd566c0c5e180642803d8ea24442afcca02f1e3d03111f0d25a62ba5f53/django-model-import-0.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.2.1": [ { "comment_text": "", "digests": { "md5": "899aaa004f6a37c36b353c3aa16735cd", "sha256": "a1428801c236b5f83052ed1bf8c2e4f31fea4d9ac1b040b27b222025609223c1" }, "downloads": -1, "filename": "django-model-import-0.2.1.tar.gz", "has_sig": false, "md5_digest": "899aaa004f6a37c36b353c3aa16735cd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 10639, "upload_time": "2018-02-15T05:47:52", "upload_time_iso_8601": "2018-02-15T05:47:52.394897Z", "url": "https://files.pythonhosted.org/packages/ff/22/2fe599436b630ecadf1cb40c2a1d4199c9a86e8b66d61d67db6fa967e057/django-model-import-0.2.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3": [ { "comment_text": "", "digests": { "md5": "4375062b1d2846f67990464989a37fa9", "sha256": "89e563eab7e0ab70df81afd70caa935b1c04f07a594acaae158f3ff7d863c962" }, "downloads": -1, "filename": "django-model-import-0.3.tar.gz", "has_sig": false, "md5_digest": "4375062b1d2846f67990464989a37fa9", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12143, "upload_time": "2018-02-23T05:11:15", "upload_time_iso_8601": "2018-02-23T05:11:15.837294Z", "url": "https://files.pythonhosted.org/packages/f2/9d/9812c076a432c715ae93b3be0ff7ae5bf1e966d105614724facee556515f/django-model-import-0.3.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.1": [ { "comment_text": "", "digests": { "md5": "e93accc1ff886ff1a7327e067bd8c3f3", "sha256": "8db1b2045238e32cfad39d11800f71d3db27c8ac0e8d5110d2215c7b4b8a11f5" }, "downloads": -1, "filename": "django-model-import-0.3.1.tar.gz", "has_sig": false, "md5_digest": "e93accc1ff886ff1a7327e067bd8c3f3", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12315, "upload_time": "2018-02-28T01:52:48", "upload_time_iso_8601": "2018-02-28T01:52:48.743240Z", "url": "https://files.pythonhosted.org/packages/49/fc/0aae2eb3414e34f3a376157fcdef9f821580bcefc0be5cf84619bc6b5915/django-model-import-0.3.1.tar.gz", "yanked": false, "yanked_reason": null } ], "0.3.2": [ { "comment_text": "", "digests": { "md5": "744ceb95eae84e1dae28d326a82a8e0b", "sha256": "7cf9ec8e72580fa403ec949f72103b95fb28efb5c60235cc1a12051a16466155" }, "downloads": -1, "filename": "django-model-import-0.3.2.tar.gz", "has_sig": false, "md5_digest": "744ceb95eae84e1dae28d326a82a8e0b", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 12316, "upload_time": "2018-03-01T01:58:56", "upload_time_iso_8601": "2018-03-01T01:58:56.109033Z", "url": "https://files.pythonhosted.org/packages/ee/3d/d8cf96b588d7eb5f1062001d0368e178cb7941da8a918bbca81d2bca4895/django-model-import-0.3.2.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4": [ { "comment_text": "", "digests": { "md5": "b7133a0ecaf5c7d8f17b06a06a9eec60", "sha256": "5fe8ad2f0e07266c37dabed9e01d274c29e57320ae049ed92c78e63aaca4c1a9" }, "downloads": -1, "filename": "django_model_import-0.4-py3-none-any.whl", "has_sig": false, "md5_digest": "b7133a0ecaf5c7d8f17b06a06a9eec60", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13005, "upload_time": "2019-10-23T11:30:06", "upload_time_iso_8601": "2019-10-23T11:30:06.192243Z", "url": "https://files.pythonhosted.org/packages/47/ae/a1e1f8023884c82aca9f0e069ee3cef3b2505dbb926041f3acd90b891c0d/django_model_import-0.4-py3-none-any.whl", "yanked": false, "yanked_reason": null } ], "0.4.1": [ { "comment_text": "", "digests": { "md5": "7920b96ffc2fb5b3890b111278868436", "sha256": "afbdf4667bf1189b12573ac6302162f1cebac68bd3d050cc8fdcc02c01be00b9" }, "downloads": -1, "filename": "django_model_import-0.4.1-py3-none-any.whl", "has_sig": false, "md5_digest": "7920b96ffc2fb5b3890b111278868436", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13052, "upload_time": "2019-10-29T03:59:33", "upload_time_iso_8601": "2019-10-29T03:59:33.987093Z", "url": "https://files.pythonhosted.org/packages/32/2a/a771b5b285d15c17c72b280c5f23943483b72c4a8f146fa6804b255965e4/django_model_import-0.4.1-py3-none-any.whl", "yanked": false, "yanked_reason": null } ], "0.4.10": [ { "comment_text": "", "digests": { "md5": "f9911943fe0043fea02569c5f437cfe2", "sha256": "d2544cb74943bba6b4f344d2a3800a3ad8921223df7339dde629254e5ed6cf84" }, "downloads": -1, "filename": "django_model_import-0.4.10-py3-none-any.whl", "has_sig": false, "md5_digest": "f9911943fe0043fea02569c5f437cfe2", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.9,<4.0", "size": 13530, "upload_time": "2021-08-02T00:26:33", "upload_time_iso_8601": "2021-08-02T00:26:33.178794Z", "url": "https://files.pythonhosted.org/packages/47/88/2bc23d8a37fe2b404a0e34828af877114c39e22f7767b8eeb304c8fc99d6/django_model_import-0.4.10-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "d8030c52a739b742962d49ba329bd6f4", "sha256": "5e098e190ba315e1ad6301f83af932594403b93d397ce6e6c5b4381c719b2144" }, "downloads": -1, "filename": "django-model-import-0.4.10.tar.gz", "has_sig": false, "md5_digest": "d8030c52a739b742962d49ba329bd6f4", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.9,<4.0", "size": 12843, "upload_time": "2021-08-02T00:26:30", "upload_time_iso_8601": "2021-08-02T00:26:30.918932Z", "url": "https://files.pythonhosted.org/packages/12/45/ebc1641fb1002e09d3f701b6f3a8b630486c26e75036ea6aaec2f6f8b47d/django-model-import-0.4.10.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.11": [ { "comment_text": "", "digests": { "md5": "1593a3473b49c38d4121e508454716fe", "sha256": "024161a9c6df3e119d4c7a67e993236e41f53d48abe1dffe6f686521f949d166" }, "downloads": -1, "filename": "django_model_import-0.4.11-py3-none-any.whl", "has_sig": false, "md5_digest": "1593a3473b49c38d4121e508454716fe", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.9,<4.0", "size": 13586, "upload_time": "2021-08-04T00:47:18", "upload_time_iso_8601": "2021-08-04T00:47:18.405640Z", "url": "https://files.pythonhosted.org/packages/ea/01/b27d65f465b6d6981ed540c4d8b6a5182d66b2a4c5d0d064b21fcca479a5/django_model_import-0.4.11-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "9abd0ba351c95bfc6084d6b10ef63d50", "sha256": "b669a42bc8a5641f9b3da1f76250b078bfb6a4a70ee88db0e1aa8ccd680e3d9b" }, "downloads": -1, "filename": "django-model-import-0.4.11.tar.gz", "has_sig": false, "md5_digest": "9abd0ba351c95bfc6084d6b10ef63d50", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.9,<4.0", "size": 12910, "upload_time": "2021-08-04T00:47:15", "upload_time_iso_8601": "2021-08-04T00:47:15.566812Z", "url": "https://files.pythonhosted.org/packages/00/76/d9d765cb22e30321f99686b78f15bbc794965bcd7652dd86e60a2d266f10/django-model-import-0.4.11.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.12": [ { "comment_text": "", "digests": { "md5": "a547e39c121b9b203744e90f650ab8a3", "sha256": "4241bfe9ad61a162ef26051a18a7aa735dacca41c040b40394a875e3ef3829db" }, "downloads": -1, "filename": "django_model_import-0.4.12-py3-none-any.whl", "has_sig": false, "md5_digest": "a547e39c121b9b203744e90f650ab8a3", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.9,<4.0", "size": 14191, "upload_time": "2021-08-04T13:13:34", "upload_time_iso_8601": "2021-08-04T13:13:34.773245Z", "url": "https://files.pythonhosted.org/packages/cc/e0/36cad911a569011034dd7433d41486af2bf084bdef2962116e0e42b72325/django_model_import-0.4.12-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "9c2c35fadf207ed2e9ae53efad7ec39f", "sha256": "d52eb0842d0a1c7c3e9916e10985e326f1400481c7f335ab96663edb8fad902c" }, "downloads": -1, "filename": "django-model-import-0.4.12.tar.gz", "has_sig": false, "md5_digest": "9c2c35fadf207ed2e9ae53efad7ec39f", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.9,<4.0", "size": 13241, "upload_time": "2021-08-04T13:13:32", "upload_time_iso_8601": "2021-08-04T13:13:32.682678Z", "url": "https://files.pythonhosted.org/packages/27/08/fb9eeb5888421ed7a944bbaaab16b19df981f0e2f43129bbfe46f104e855/django-model-import-0.4.12.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.13": [ { "comment_text": "", "digests": { "md5": "2364bc38ec44dce3ed45ad50a95bb091", "sha256": "e1e6cb433c3ca744b7365b66669feb6a809132fb62f5fd02e40ff68138669be9" }, "downloads": -1, "filename": "django_model_import-0.4.13-py3-none-any.whl", "has_sig": false, "md5_digest": "2364bc38ec44dce3ed45ad50a95bb091", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.9,<4.0", "size": 14367, "upload_time": "2021-10-01T16:08:41", "upload_time_iso_8601": "2021-10-01T16:08:41.392890Z", "url": "https://files.pythonhosted.org/packages/fc/5f/2312dc9d48f1fda7b478afef9ac42b43428be18d5cc5265dd272adcfe5ea/django_model_import-0.4.13-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "ddf2d4d01864b24e69be34a5bc693b2a", "sha256": "fe32e6287bbbcd6bb61c1946d33a1656f5e0890b2e3c11ba71c5e2c16ca7910a" }, "downloads": -1, "filename": "django-model-import-0.4.13.tar.gz", "has_sig": false, "md5_digest": "ddf2d4d01864b24e69be34a5bc693b2a", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.9,<4.0", "size": 13364, "upload_time": "2021-10-01T16:08:40", "upload_time_iso_8601": "2021-10-01T16:08:40.106535Z", "url": "https://files.pythonhosted.org/packages/88/49/f8a044ba5b559899f3b8943d94f804f211bd9f5b34c7a4e9422ee4b36867/django-model-import-0.4.13.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.14": [ { "comment_text": "", "digests": { "md5": "23b57d8a38d6e1a91238c9fc60890e6b", "sha256": "1140951c05d2669420c372ee68bc22f99ae202b2925342116f9b8cb6547ba0f3" }, "downloads": -1, "filename": "django_model_import-0.4.14-py3-none-any.whl", "has_sig": false, "md5_digest": "23b57d8a38d6e1a91238c9fc60890e6b", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.9,<4.0", "size": 14467, "upload_time": "2022-01-24T02:09:00", "upload_time_iso_8601": "2022-01-24T02:09:00.298901Z", "url": "https://files.pythonhosted.org/packages/5a/37/c0d55aff3f825150f16ab5339986aef502eb098c5f125b2a7362c90ea189/django_model_import-0.4.14-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "7d3f372bee7847852cfa74dd18c55e37", "sha256": "2c8ac0e35d87fc3e4414bd66583ccad90fd417692b314595d2d246ff40013ae7" }, "downloads": -1, "filename": "django-model-import-0.4.14.tar.gz", "has_sig": false, "md5_digest": "7d3f372bee7847852cfa74dd18c55e37", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.9,<4.0", "size": 13385, "upload_time": "2022-01-24T02:08:58", "upload_time_iso_8601": "2022-01-24T02:08:58.148636Z", "url": "https://files.pythonhosted.org/packages/37/20/62abc498fdb0e7a46aaed2fef3d89000c5253074a087a9a83fd0786d8814/django-model-import-0.4.14.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.15": [ { "comment_text": "", "digests": { "md5": "69cd86f1890c090461aa03e302ac345f", "sha256": "fab675c6dd2dcc532a88378f09bb95efb7960572eaa2e5a5637a1d683dbbf83f" }, "downloads": -1, "filename": "django_model_import-0.4.15-py3-none-any.whl", "has_sig": false, "md5_digest": "69cd86f1890c090461aa03e302ac345f", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.9,<4.0", "size": 14732, "upload_time": "2022-01-31T04:51:41", "upload_time_iso_8601": "2022-01-31T04:51:41.148260Z", "url": "https://files.pythonhosted.org/packages/22/42/dac2cf1ee04e111e6b5cb9c3276b00da5db119bedebba9696ec521caaed9/django_model_import-0.4.15-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "7b975dad26097bdb6ebab758d5313f4e", "sha256": "f453b8d5f6e85f7fc69eee5208904e21b8acc45e3bf81539b7dca4bf24ef1bbf" }, "downloads": -1, "filename": "django-model-import-0.4.15.tar.gz", "has_sig": false, "md5_digest": "7b975dad26097bdb6ebab758d5313f4e", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.9,<4.0", "size": 13679, "upload_time": "2022-01-31T04:51:39", "upload_time_iso_8601": "2022-01-31T04:51:39.833042Z", "url": "https://files.pythonhosted.org/packages/89/bf/a601ae9fad0dd5e19783bf9b53b3cf0bb26c41bda80192b70f740cd64b27/django-model-import-0.4.15.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.16": [ { "comment_text": "", "digests": { "md5": "51f13e7b3ef1a546dd5324b8873a2c21", "sha256": "b79a6a8452678bf43f1e6cea89d164d6191dd895bd8147cf7e240c7e0970c21a" }, "downloads": -1, "filename": "django_model_import-0.4.16-py3-none-any.whl", "has_sig": false, "md5_digest": "51f13e7b3ef1a546dd5324b8873a2c21", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.9,<4.0", "size": 14760, "upload_time": "2022-04-19T06:03:29", "upload_time_iso_8601": "2022-04-19T06:03:29.772879Z", "url": "https://files.pythonhosted.org/packages/18/b3/04bee4fd723da780c6d2dd2acad8dd8665d70186bd90255e13b790e39c00/django_model_import-0.4.16-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "a4fb4abe91a8cc71836603b14fbb1f9d", "sha256": "4befbffe73c2d90fd0c9ee8e600afacf64153a3b9993152bb0e9573266d3df07" }, "downloads": -1, "filename": "django-model-import-0.4.16.tar.gz", "has_sig": false, "md5_digest": "a4fb4abe91a8cc71836603b14fbb1f9d", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.9,<4.0", "size": 13729, "upload_time": "2022-04-19T06:03:27", "upload_time_iso_8601": "2022-04-19T06:03:27.418717Z", "url": "https://files.pythonhosted.org/packages/98/01/22751f7ce3ad7c1de12556627868b123dc532825f77234bbb6b5f3024e9b/django-model-import-0.4.16.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.17": [ { "comment_text": "", "digests": { "md5": "92ccde20a65c942353fcdd1c4d82e85c", "sha256": "172abd58a3814858999ab605ce00522a03a0bf921a000a627b5fca64399981ec" }, "downloads": -1, "filename": "django_model_import-0.4.17-py3-none-any.whl", "has_sig": false, "md5_digest": "92ccde20a65c942353fcdd1c4d82e85c", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.9,<4.0", "size": 14757, "upload_time": "2022-04-19T06:08:40", "upload_time_iso_8601": "2022-04-19T06:08:40.504877Z", "url": "https://files.pythonhosted.org/packages/44/e2/a6dc62c40005bea3489c61f1cdf208df4fcf34116b3a22ef592c4ad0aa40/django_model_import-0.4.17-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "65db9fef9c73922cbe87f8e7e36039c6", "sha256": "9066f662dd7e0200e4990750c5b7390fda54aa9c79808fbb883d5ecfc9ed56a6" }, "downloads": -1, "filename": "django-model-import-0.4.17.tar.gz", "has_sig": false, "md5_digest": "65db9fef9c73922cbe87f8e7e36039c6", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.9,<4.0", "size": 13737, "upload_time": "2022-04-19T06:08:38", "upload_time_iso_8601": "2022-04-19T06:08:38.965439Z", "url": "https://files.pythonhosted.org/packages/86/fc/6635d0a541ac4efd3fce5a4080abe82bd55a7f36c3a49c7af0085fd7f651/django-model-import-0.4.17.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.18": [ { "comment_text": "", "digests": { "md5": "e3409b9b9ea523c509d79e6c3e17a0ff", "sha256": "b2f353192ce64ecd33e839e568211bf8b6c478b288154e3777a1dfacf7ab3e0e" }, "downloads": -1, "filename": "django_model_import-0.4.18-py3-none-any.whl", "has_sig": false, "md5_digest": "e3409b9b9ea523c509d79e6c3e17a0ff", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.9,<4.0", "size": 14775, "upload_time": "2022-04-21T07:55:07", "upload_time_iso_8601": "2022-04-21T07:55:07.268695Z", "url": "https://files.pythonhosted.org/packages/cf/70/8da320632465aafe93144665c1dd4f8a5605ca0d5e28ff430c57cd7f77e4/django_model_import-0.4.18-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "90065070e7617e56477292ae6f2a5be1", "sha256": "708cd4a78ccfc6b20e3c0108627eebc5e5695bc83a101acb459e122404b3251f" }, "downloads": -1, "filename": "django-model-import-0.4.18.tar.gz", "has_sig": false, "md5_digest": "90065070e7617e56477292ae6f2a5be1", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.9,<4.0", "size": 13755, "upload_time": "2022-04-21T07:55:05", "upload_time_iso_8601": "2022-04-21T07:55:05.843873Z", "url": "https://files.pythonhosted.org/packages/12/79/00300b2bc4ab37830f619a60ccbebf91a6eefef73fec0e7995f07670c814/django-model-import-0.4.18.tar.gz", "yanked": false, "yanked_reason": null } ], "0.4.2": [ { "comment_text": "", "digests": { "md5": "6a64745b7b6f2538a1399f4c03d139b0", "sha256": "bccd7104445e0cd218f8e72bfa3e7c1eeb1e525950f6e20ec0c3a9fc4634a71e" }, "downloads": -1, "filename": "django_model_import-0.4.2-py3-none-any.whl", "has_sig": false, "md5_digest": "6a64745b7b6f2538a1399f4c03d139b0", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13171, "upload_time": "2020-11-27T04:00:09", "upload_time_iso_8601": "2020-11-27T04:00:09.591158Z", "url": "https://files.pythonhosted.org/packages/64/e0/ffe4c799980576c2db257aa88c8aee52d9a62af5b6434fa4c9271c68c934/django_model_import-0.4.2-py3-none-any.whl", "yanked": false, "yanked_reason": null } ], "0.4.3": [ { "comment_text": "", "digests": { "md5": "165ae2566e6e93b04638a52377206e40", "sha256": "3ebcd4778ae89857830aca3906fc33c3dc09f3f1e54ec0fa2e0030769b52b965" }, "downloads": -1, "filename": "django_model_import-0.4.3-py3-none-any.whl", "has_sig": false, "md5_digest": "165ae2566e6e93b04638a52377206e40", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13179, "upload_time": "2020-12-01T07:03:48", "upload_time_iso_8601": "2020-12-01T07:03:48.545558Z", "url": "https://files.pythonhosted.org/packages/42/0c/2db6db708f71bc1b1e7432939248961ca20e7976151375e57b292386fe6b/django_model_import-0.4.3-py3-none-any.whl", "yanked": false, "yanked_reason": null } ], "0.4.4": [ { "comment_text": "", "digests": { "md5": "8af1c07ed823952a6462d8d873b045fa", "sha256": "b09fa7a02b71536a432b87564f53330f9891fd03ec31273b304cf842f96a6878" }, "downloads": -1, "filename": "django_model_import-0.4.4-py3-none-any.whl", "has_sig": false, "md5_digest": "8af1c07ed823952a6462d8d873b045fa", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": null, "size": 13514, "upload_time": "2020-12-07T06:35:15", "upload_time_iso_8601": "2020-12-07T06:35:15.857674Z", "url": "https://files.pythonhosted.org/packages/a1/19/2c3bb573dbddc81206119826b0593977fb593d26532edc829e9b6d7b1b10/django_model_import-0.4.4-py3-none-any.whl", "yanked": false, "yanked_reason": null } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "e3409b9b9ea523c509d79e6c3e17a0ff", "sha256": "b2f353192ce64ecd33e839e568211bf8b6c478b288154e3777a1dfacf7ab3e0e" }, "downloads": -1, "filename": "django_model_import-0.4.18-py3-none-any.whl", "has_sig": false, "md5_digest": "e3409b9b9ea523c509d79e6c3e17a0ff", "packagetype": "bdist_wheel", "python_version": "py3", "requires_python": ">=3.9,<4.0", "size": 14775, "upload_time": "2022-04-21T07:55:07", "upload_time_iso_8601": "2022-04-21T07:55:07.268695Z", "url": "https://files.pythonhosted.org/packages/cf/70/8da320632465aafe93144665c1dd4f8a5605ca0d5e28ff430c57cd7f77e4/django_model_import-0.4.18-py3-none-any.whl", "yanked": false, "yanked_reason": null }, { "comment_text": "", "digests": { "md5": "90065070e7617e56477292ae6f2a5be1", "sha256": "708cd4a78ccfc6b20e3c0108627eebc5e5695bc83a101acb459e122404b3251f" }, "downloads": -1, "filename": "django-model-import-0.4.18.tar.gz", "has_sig": false, "md5_digest": "90065070e7617e56477292ae6f2a5be1", "packagetype": "sdist", "python_version": "source", "requires_python": ">=3.9,<4.0", "size": 13755, "upload_time": "2022-04-21T07:55:05", "upload_time_iso_8601": "2022-04-21T07:55:05.843873Z", "url": "https://files.pythonhosted.org/packages/12/79/00300b2bc4ab37830f619a60ccbebf91a6eefef73fec0e7995f07670c814/django-model-import-0.4.18.tar.gz", "yanked": false, "yanked_reason": null } ], "vulnerabilities": [] }