Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

Download ZIP
A switchable ImageField for third party Django applications
Python
branch: master

README: stop mentioning old wardi/django-filebrowser-no-grappelli fork

smacker/django-filebrowser-no-grappelli contains the active maintained fork now
latest commit 5194005d22
@vdboor vdboor authored

README.rst

django-any-imagefield

This module offers a abstraction over the various image fields, so allow third party applications can provide an imagefield at the authors choice.

Supported image fields:

Installation

First install the module, preferably in a virtual environment. It can be installed from PyPI:

pip install django-any-imagefield

Or the current folder can be installed:

pip install .

Configuration

Add the module to the installed apps:

INSTALLED_APPS += (
    'any_imagefield',
)

Usage

In a Django model, the field can be included:

from django.db import models
from any_imagefield.models import AnyImageField

class Article(models.Model):
    title = models.CharField("Title", max_length=200)
    image = AnyImageField("Image", upload_to='images')

    class Meta:
        verbose_name = "Article"
        verbose_name_plural = "Articles"

    def __unicode__(self):
        return self.title

By default, the AnyImageField displays a standard ImageField with a preview thumbnail. When django-filebrowser-no-grappelli is installed, it will use the FileBrowseField from that package to display the file/image browser. When your package has it's own ImageField variant/subclass, please consider to add support for it in this package.

Contributing

This module is designed to be generic. In case there is anything you didn't like about it, or think it's not flexible enough, please let us know. We'd love to improve it!

If you have any other valuable contribution, suggestion or idea, please let us know as well because we will look into it. Pull requests are welcome too. :-)

Something went wrong with that request. Please try again.