Skip to main content

Custom widget that limits the number of characters that can be entered in a textarea field

Project description

https://img.shields.io/pypi/v/django-charsleft-widget.svg https://img.shields.io/pypi/dm/django-charsleft-widget.svg https://img.shields.io/github/license/bashu/django-charsleft-widget.svg https://img.shields.io/travis/bashu/django-charsleft-widget.svg

django-charsleft-widget is a custom widget that limits the number of characters that can be entered in a textarea field.

https://raw.githubusercontent.com/bashu/django-charsleft-widget/develop/showcase.gif

Installation

pip install django-charsleft-widget

External dependencies

  • jQuery - this is not included in the package since it is expected that in most scenarios this would already be available.

Setup

Add charsleft_widget to INSTALLED_APPS:

INSTALLED_APPS += (
    'charsleft_widget',
)

and just include charsleft_widget templates

{% include "charsleft_widget/charsleft_widget_css.html" %} {# Before the closing head tag #}
{% include "charsleft_widget/charsleft_widget_js.html" %} {# Before the closing body tag #}

When deploying on production server, don’t forget to run:

python manage.py collectstatic

Usage

All you need now is to import ClearableInput class and override field’s widget, for example:

from django.forms.fields import CharField

from charsleft_widget import CharsLeftArea

class Form(forms.Form):

    field = CharField(max_length=128, widget=CharsLeftArea)

Please see example application. This application is used to manually test the functionalities of this package. This also serves as a good example.

You need only Django 1.4 or above to run that. It might run on older versions but that is not tested.

License

django-charsleft-widget is released under the BSD license.

Changes

1.0.0 (2021-11-30)

  • Added Django 3+ support.

  • Dropped Python 2.7 support.

  • Dropped Django 1.10 / 1.11 support.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page