django-excel-report


Namedjango-excel-report JSON
Version 0.0.5 PyPI version JSON
download
home_page
SummarySimplify excel reports from django apps
upload_time2023-04-18 12:26:29
maintainer
docs_urlNone
authorBoris Alekseev
requires_python>=3.7
licenseMIT
keywords django excel
VCS
bugtrack_url
requirements No requirements were recorded.
Travis-CI No Travis.
coveralls test coverage No coveralls.
            Quick guide:

Here is defined models for example:
```python
from django.db import models


class MyFiles(models.Model):
    file = models.FileField(upload_to='path/to/upload/')
    description = models.TextField()


class M2MRelated(models.Model):
    field = models.TextField()


class RelatedModel:
    field = models.TextField()


class MyModel:
    field = models.TextField()
    related_model = models.ForeignKey(RelatedModel, models.DO_NOTHING)
    m2m_related = models.ManyToManyField(M2MRelated)
```
How to use BaseReport class:
```python
from django_excel_report import BaseReport


class MyReport(BaseReport):
    model = MyModel
    fields = ["field", "related_model__field", "m2m_related__field"]

def some_task(**kwargs):
    qs = MyModel.objects.filter(**kwargs)
    report = MyReport(queryset=qs)
    file = report.get_django_file()
    instance = MyFiles.objects.create(description='description')
    instance.file.save('report.xlsx', file)
```

BaseReport class provides easy way to generate reports with merged cells for related objects:
<img src="readme_files/report_example.png">

            

Raw data

            {
    "_id": null,
    "home_page": "",
    "name": "django-excel-report",
    "maintainer": "",
    "docs_url": null,
    "requires_python": ">=3.7",
    "maintainer_email": "",
    "keywords": "django excel",
    "author": "Boris Alekseev",
    "author_email": "i.borisalekseev@gmail.com",
    "download_url": "https://files.pythonhosted.org/packages/69/d5/c0c6b54993bb0f6c47960c92aa9b03337789f56b5b5db0b8f58652986e86/django_excel_report-0.0.5.tar.gz",
    "platform": null,
    "description": "Quick guide:\n\nHere is defined models for example:\n```python\nfrom django.db import models\n\n\nclass MyFiles(models.Model):\n    file = models.FileField(upload_to='path/to/upload/')\n    description = models.TextField()\n\n\nclass M2MRelated(models.Model):\n    field = models.TextField()\n\n\nclass RelatedModel:\n    field = models.TextField()\n\n\nclass MyModel:\n    field = models.TextField()\n    related_model = models.ForeignKey(RelatedModel, models.DO_NOTHING)\n    m2m_related = models.ManyToManyField(M2MRelated)\n```\nHow to use BaseReport class:\n```python\nfrom django_excel_report import BaseReport\n\n\nclass MyReport(BaseReport):\n    model = MyModel\n    fields = [\"field\", \"related_model__field\", \"m2m_related__field\"]\n\ndef some_task(**kwargs):\n    qs = MyModel.objects.filter(**kwargs)\n    report = MyReport(queryset=qs)\n    file = report.get_django_file()\n    instance = MyFiles.objects.create(description='description')\n    instance.file.save('report.xlsx', file)\n```\n\nBaseReport class provides easy way to generate reports with merged cells for related objects:\n<img src=\"readme_files/report_example.png\">\n",
    "bugtrack_url": null,
    "license": "MIT",
    "summary": "Simplify excel reports from django apps",
    "version": "0.0.5",
    "split_keywords": [
        "django",
        "excel"
    ],
    "urls": [
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "670aa1b70fef172e280052ff1465c557473292db88e22b957bed3442d6e7224c",
                "md5": "742022ba28bc957ba99a74926b1fb45f",
                "sha256": "5bbeb0f2586ae14074bf6fbe229162a996ce2c3881eb94fdaddde66fd9f307ad"
            },
            "downloads": -1,
            "filename": "django_excel_report-0.0.5-py3-none-any.whl",
            "has_sig": false,
            "md5_digest": "742022ba28bc957ba99a74926b1fb45f",
            "packagetype": "bdist_wheel",
            "python_version": "py3",
            "requires_python": ">=3.7",
            "size": 9693,
            "upload_time": "2023-04-18T12:26:23",
            "upload_time_iso_8601": "2023-04-18T12:26:23.733852Z",
            "url": "https://files.pythonhosted.org/packages/67/0a/a1b70fef172e280052ff1465c557473292db88e22b957bed3442d6e7224c/django_excel_report-0.0.5-py3-none-any.whl",
            "yanked": false,
            "yanked_reason": null
        },
        {
            "comment_text": "",
            "digests": {
                "blake2b_256": "69d5c0c6b54993bb0f6c47960c92aa9b03337789f56b5b5db0b8f58652986e86",
                "md5": "574c0d6e1eed9c8998e9b398a44f143b",
                "sha256": "83c41c8a0289a889cc0284b1256b5e0d1029d9e2a08201b90f4d5cd9150a54a2"
            },
            "downloads": -1,
            "filename": "django_excel_report-0.0.5.tar.gz",
            "has_sig": false,
            "md5_digest": "574c0d6e1eed9c8998e9b398a44f143b",
            "packagetype": "sdist",
            "python_version": "source",
            "requires_python": ">=3.7",
            "size": 9205,
            "upload_time": "2023-04-18T12:26:29",
            "upload_time_iso_8601": "2023-04-18T12:26:29.386023Z",
            "url": "https://files.pythonhosted.org/packages/69/d5/c0c6b54993bb0f6c47960c92aa9b03337789f56b5b5db0b8f58652986e86/django_excel_report-0.0.5.tar.gz",
            "yanked": false,
            "yanked_reason": null
        }
    ],
    "upload_time": "2023-04-18 12:26:29",
    "github": false,
    "gitlab": false,
    "bitbucket": false,
    "lcname": "django-excel-report"
}
        
Elapsed time: 0.12112s