{ "info": { "author": "James Tiplady", "author_email": "", "bugtrack_url": null, "classifiers": [ "Development Status :: 4 - Beta", "Environment :: Web Environment", "Framework :: Django", "Framework :: Django :: 1.10", "Framework :: Django :: 1.11", "Framework :: Django :: 2.0", "Framework :: Django :: 2.1", "Framework :: Django :: 2.2", "Intended Audience :: Developers", "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Programming Language :: Python", "Programming Language :: Python :: 2.7", "Programming Language :: Python :: 3.6", "Topic :: Software Development :: Libraries :: Application Frameworks", "Topic :: Software Development :: Libraries :: Python Modules" ], "description": "# django-admin-thumbnails\n\nA Django app to assist in adding thumbnails for your model's image fields to admin list views and forms in a reasonably DRY manner.\n\n## Rationale\n\nWhen working with models that include `ImageField`s, `FileField`s or when using `ThumbnailerImageField` from `easy_thumbnails`, it can often be desirable to include a thumbnail preview of the field as part of the admin form, fieldset or in list views. Various methods to achieve this exist but all seem to involve a degree of duplication. I've made a few attempts to DRY out such code over the years and this library represents my most recent solution. So, please enjoy!\n\n## Compatibility\n\nAs I've only recently started migrating my projects to Django 2 / Python 3, the below is only a guide \u2013 however I expect it to be mostly accurate.\n\n| | Django 1.10 | 1.11 | 2.0 | 2.1 | 2.2 |\n|---------------:|:-------------:|:----:|:---:|:---:|:---:|\n| **Python** 2.7 | \u2714 | \u2714 | | | |\n| 3.6 | \u2714 | \u2714 | \u2714 | \u2714 | \u2714 |\n\n## Installation\n\n```\n$ pip install django-admin-thumbnails\n```\n\n## Usage\n\nThe app adds fields to your `ModelAdmin` or `*Inline` class; one for each thumbnail you want to display. These are appended to the class's `readonly_fields` tuple (unless you specify otherwise) so they will be displayed at the bottom of your admin form, or you can include them by name in your `fieldsets` or `list_display` definitions.\n\n`django-admin-thumbnails` will handle `ImageField`, `FileField` (so you can use SVG, for example) and (if `easy_thumbnails` is installed) `ThumbnailerImageField`. In the latter case a thumbnail alias will be used, which you can specify in settings.\n\nTo create an admin thumbnail field, decorate your `ModelAdmin` or `*Inline` class and optionally specify what to do with the newly created field.\n\nAssuming a model like the following:\n\n```python\nclass Person(models.Model):\n name = models.CharField('Name', max_length=100)\n image = models.ImageField('Image')\n # ...\n```\n\nIn the simplest use-case, to add a thumbnail field to the bottom of the admin form, simply decorate the `ModelAdmin` or `*Inline` class (the order of decorators is important), supplying the name of the field from which the thumbnail will be taken:\n\n```python\nimport admin_thumbnails\n\n@admin.register(models.Person)\n@admin_thumbnails.thumbnail('image')\nclass PersonAdmin(admin.ModelAdmin):\n pass\n```\n\nThis will add a field called `image_thumbnail` (`FOO_thumbnail` where `FOO` is the origin field's name) to your `ModelAdmin` or `*Inline` definition. To override the title given to the new field, pass a second string argument to the decorator:\n\n```python\n@admin_thumbnails.thumbnail('image', 'Thumbnail')\n```\n\nTo add the thumbnail to the columns shown in the model's list view, add the new field name to `list_display`:\n\n```python\n@admin.register(models.Person)\n@admin_thumbnails.thumbnail('image')\nclass PersonAdmin(admin.ModelAdmin):\n list_display = ('name', 'image_thumbnail')\n```\n\nOr include it in your `fieldsets` similarly:\n\n```python\n@admin.register(models.Person)\n@admin_thumbnails.thumbnail('image')\nclass PersonAdmin(admin.ModelAdmin):\n fieldsets = (\n (None, {\n 'fields': ('name', 'image_thumbnail'),\n }),\n )\n```\n\nBy default the new field will be appended to the `readonly_fields` tuple \u2013 if this is undesirable (e.g. if you want to include the thumbnail in the list view but _not_ in the default form fields), pass `append=False` to the decorator:\n\n```python\n@admin.register(models.Person)\n@admin_thumbnails.thumbnail('image', append=False)\nclass PersonAdmin(admin.ModelAdmin):\n list_display = ('name', 'image_thumbnail')\n```\n\nThis isn't necessary if you're using `fieldsets`, as by doing so you will control the inclusion (or omission) and position of the thumbnail field.\n\nIf your field contains images that are designed to be shown on a dark background, you can supply `background=True` to the decorator to add one to the thumbnail (via CSS) when displayed:\n\n```python\n@admin_thumbnails.thumbnail('image', background=True)\n```\n\nIf you're using `easy_thumbnails` and want to override the alias used to generate your thumbnail on a per-field basis (as opposed to using the `ADMIN_THUMBNAIL_THUMBNAIL_ALIAS` setting; see below), you can use the `alias` argument to the decorator:\n\n```python\n@admin_thumbnails.thumbnail('image', alias='admin_thumbnail_alternative')\n```\n\n## Configuration\n\n### `ADMIN_THUMBNAIL_DEFAULT_LABEL`\n\n**Default:** `'Preview'`\n\nSetting this overrides the default column name / title used by thumbnails.\n\n### `ADMIN_THUMBNAIL_FIELD_SUFFIX`\n\n**Default:** `'_thumbnail'`\n\nSetting this overrides the suffix given to newly created thumbnail fields. Change if you have collision issues with other field names you want to use. Don't forget to update `list_display` and/or `fieldsets` in your `ModelAdmin` as necessary.\n\n### `ADMIN_THUMBNAIL_THUMBNAIL_ALIAS`\n\n**Default:** `'admin_thumbnail'`\n\nIf `easy_thumbnails` is installed and available, any model field using `ThumbnailerImageField` will be resized using a thumbnail alias called `admin_thumbnail` if it's defined. You can either define this alias in your settings (more info from the `easy_thumbnails` documentation [here](https://easy-thumbnails.readthedocs.io/en/stable/usage/#thumbnail-aliases)) or supply a different alias name as the value of this setting.\n\n### `ADMIN_THUMBNAIL_STYLE`\n\n**Default:** `{'display': 'block', 'width': '100px', 'height': 'auto'}`\n\nA dictionary of CSS property/value pairs that will be added to the `style` attribute of any thumbnail image when output in the admin. Override to supply your own styles.\n\n### `ADMIN_THUMBNAIL_BACKGROUND_STYLE`\n\n**Default:** `{'background': '#000'}`\n\nA dictionary of CSS property/value pairs added when the `background=True` option is used (see **Usage** above). Override to supply your own styles. Note that these styles are used _in addition_ to any defined in `ADMIN_THUMBNAIL_STYLE`.\n\n## Development Installation\n\nIf working locally on the package you can install the development tools via `pip`:\n\n```shell\n$ pip install -e .[dev]\n```\n\nTo lint with `flake8`:\n\n```shell\n$ flake8\n```\n\n## Issues, Suggestions, Contributions\n\n...are welcome on GitHub. Thanks for your interest in `django-admin-thumbnails`!", "description_content_type": "text/markdown", "docs_url": null, "download_url": "", "downloads": { "last_day": -1, "last_month": -1, "last_week": -1 }, "home_page": "http://github.com/BigglesZX/django-admin-thumbnails", "keywords": "django", "license": "MIT", "maintainer": "James Tiplady", "maintainer_email": "", "name": "django-admin-thumbnails", "package_url": "https://pypi.org/project/django-admin-thumbnails/", "platform": "OS Independent", "project_url": "https://pypi.org/project/django-admin-thumbnails/", "project_urls": { "Homepage": "http://github.com/BigglesZX/django-admin-thumbnails" }, "release_url": "https://pypi.org/project/django-admin-thumbnails/0.2.2/", "requires_dist": null, "requires_python": ">=2.6,<4", "summary": "A Django app for DRY thumbnails in admin list views and forms.", "version": "0.2.2" }, "last_serial": 5954133, "releases": { "0.1.0": [ { "comment_text": "", "digests": { "md5": "47a678c32009ffa685125fb49d3c137f", "sha256": "6d28bf5adb1900c9d4107945f8c6d9695908e6588cf48d6a24d69c8452b151b4" }, "downloads": -1, "filename": "django-admin-thumbnails-0.1.0.tar.gz", "has_sig": false, "md5_digest": "47a678c32009ffa685125fb49d3c137f", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5549, "upload_time": "2019-04-07T15:39:54", "url": "https://files.pythonhosted.org/packages/3e/06/8630bd5de6167c1e02147c8d3d466aefab7b1e5208fd26537f1c55b447a3/django-admin-thumbnails-0.1.0.tar.gz" } ], "0.1.1": [ { "comment_text": "", "digests": { "md5": "ed14051cbe8ffbab4ec4ccda7dd7fce0", "sha256": "b4499a8d3638fabd2cc36d3f7d849f49e7b721030d7d00f92c837af0571e6a21" }, "downloads": -1, "filename": "django-admin-thumbnails-0.1.1.tar.gz", "has_sig": false, "md5_digest": "ed14051cbe8ffbab4ec4ccda7dd7fce0", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5618, "upload_time": "2019-04-07T16:00:47", "url": "https://files.pythonhosted.org/packages/76/7c/05b426246aace713d45dffc85f115865a8fc6276e84bf00747eb3711a32a/django-admin-thumbnails-0.1.1.tar.gz" } ], "0.1.2": [ { "comment_text": "", "digests": { "md5": "07d1ed319a4b44c65095acd17ae2bafd", "sha256": "571bb86b76a96aedb196d0dde04e3bbfdb7bdb86bf653c9d09a92cf7a0d40167" }, "downloads": -1, "filename": "django-admin-thumbnails-0.1.2.tar.gz", "has_sig": false, "md5_digest": "07d1ed319a4b44c65095acd17ae2bafd", "packagetype": "sdist", "python_version": "source", "requires_python": null, "size": 5805, "upload_time": "2019-04-16T19:43:34", "url": "https://files.pythonhosted.org/packages/61/0d/1583b80f8d90303ecb0451a827f247bb21b4b09e170761a9b716de1d1a7d/django-admin-thumbnails-0.1.2.tar.gz" } ], "0.2.0": [ { "comment_text": "", "digests": { "md5": "57d42ccd592174152e3c05259c76c162", "sha256": "4ebcdd9a4f0492c0c2710da580f940f24a72cdde0bc6e0ec100ed22ada1c560d" }, "downloads": -1, "filename": "django-admin-thumbnails-0.2.0.tar.gz", "has_sig": false, "md5_digest": "57d42ccd592174152e3c05259c76c162", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.6,<4", "size": 6091, "upload_time": "2019-10-10T10:29:55", "url": "https://files.pythonhosted.org/packages/26/5b/a01fbd8bd9c2667885f560786e305d19cce70828083ae85f9b78cd0a2fd2/django-admin-thumbnails-0.2.0.tar.gz" } ], "0.2.2": [ { "comment_text": "", "digests": { "md5": "aac49df1fd05df14fb589cb8ecf8a9df", "sha256": "bf53921d11c225cc43b425d9c2e7564faced54d5f3a25d4a507e9bce157e04b6" }, "downloads": -1, "filename": "django-admin-thumbnails-0.2.2.tar.gz", "has_sig": false, "md5_digest": "aac49df1fd05df14fb589cb8ecf8a9df", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.6,<4", "size": 6075, "upload_time": "2019-10-10T10:37:10", "url": "https://files.pythonhosted.org/packages/0f/c7/3be5d193102f76f6198716cefb31d58b00e008ab80b931114d25a87bdc39/django-admin-thumbnails-0.2.2.tar.gz" } ] }, "urls": [ { "comment_text": "", "digests": { "md5": "aac49df1fd05df14fb589cb8ecf8a9df", "sha256": "bf53921d11c225cc43b425d9c2e7564faced54d5f3a25d4a507e9bce157e04b6" }, "downloads": -1, "filename": "django-admin-thumbnails-0.2.2.tar.gz", "has_sig": false, "md5_digest": "aac49df1fd05df14fb589cb8ecf8a9df", "packagetype": "sdist", "python_version": "source", "requires_python": ">=2.6,<4", "size": 6075, "upload_time": "2019-10-10T10:37:10", "url": "https://files.pythonhosted.org/packages/0f/c7/3be5d193102f76f6198716cefb31d58b00e008ab80b931114d25a87bdc39/django-admin-thumbnails-0.2.2.tar.gz" } ] }