Bitbucket is a code hosting site with unlimited public and private repositories. We're also free for small teams!

Close

-- restructuredtext --

django-readonlywidget

ReadOnlyWidget is a widget to display many kinds of django's modelfields read-only.

Currently supported modelfields:
  • TextField
  • CharField
  • IntegerField
  • BooleanField
  • FileField
  • ImageField
  • ForeignKey
  • ManyToManyField
  • DateTimeField
  • DateField

Extend the widget

It's easy to extend the widget. Just subclass it and add your get_modelfield_value method. Look at the existing methods to understand, how it works.

Usage

To use the widget, import it from django_readonlywidget.widgets and use ReadOnlyWidget as your forms.Field widget. The usage in django's admin application is described in the example below.

Quick Example:

from django_readonlywidget.widgets import ReadOnlyWidget

class TestAdmin(admin.ModelAdmin):
    def formfield_for_dbfield(self, db_field, \**kwargs):
        field = super(TestAdmin, self).formfield_for_dbfield(db_field, \**kwargs)
        if field:
            field.widget = ReadOnlyWidget(db_field=db_field)
        return field

Have fun!

Recent activity

Raoul Thill

Commits by Raoul Thill were pushed to rthill/django-readonlywidget

ff0ae89 - Adding custom URLField handler, uses field name checks. If field name contains string 'image_url' an image will be displayed, otherwise a clickable links will be ...
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.