diff --git a/README.md b/README.md deleted file mode 100644 index f7730fc..0000000 --- a/README.md +++ /dev/null @@ -1,4 +0,0 @@ -django-jsignature -================= - -Use jSignature jQuery plugin in your django projects diff --git a/README.rst b/README.rst index 6d59eb4..e6af966 100644 --- a/README.rst +++ b/README.rst @@ -1,12 +1,101 @@ -================== -django-jsignature -================== - A simple way to use `jSignature jQuery plugin `_ in your `Django `_ projects. It provides: * A form field and a form widget to handle jquery plugin through a Django form; * A model field to store a captured signature; -* A mixin adding two fields (signature / signature_date) in any of your Django models; +* A mixin adding two fields (signature / signature_date) in any of your Django models. + +.. image:: https://travis-ci.org/fle/django-jsignature.png?branch=master :target: https://travis-ci.org/fle/django-jsignature + +================== +INSTALL +================== +For now: + +:: + pip install https://github.com/fle/django-solo/archive/master.zip + +================== +USAGE +================== +* Add ``jsignature`` to your ``INSTALLED_APPS``: + +:: + # settings.py + INSTALLED_APPS = ( + ... + 'jsignature', + ) + +* Use provided form field and widget: + +:: + # forms.py + from django import forms + from jsignature.forms import JSignatureField + + class SignatureForm(forms.Form): + signature = JSignatureField() + +* Render image after form validation: + +:: + # views.py + from jsignature.utils import draw_signature + from myapp.forms import SignatureForm + + def my_view(request): + form = SignatureForm(request.POST or None) + if form.is_valid(): + signature = form.cleaned_data.get('signature') + if signature: + # as an image + signature_picture = draw_signature(signature) + # or as a file + signature_file_path = draw_signature(signature, as_file=True) + +================== +CUSTOMIZATION +================== +JSignature plugin options are available in python: +* Globally, in your settings: + +:: + # settings.py + JSIGNATURE_WIDTH = 500 + JSIGNATURE_HEIGHT = 200 + +* Specifically, in your form: + +:: + # forms.py + from jsignature.forms import JSignatureField + from jsignature.widgets import JSignatureWidget + + JSignatureField(widget=JSignatureWidget(jsignature_attrs={'color': '#CCC'})) + +================== +IN YOUR MODELS +================== +If you wan to store signatures, provided mixin gives a `signature` and a `signature_date` that update themselves: + +:: + from django.db import models + from jsignature.mixins import JSignatureFieldsMixin + + class JSignatureModel(JSignatureFieldsMixin): + name = models.CharField() + + +================== +AUTHORS +================== + + * Florent Lebreton + +|makinacom|_ + +.. |makinacom| image:: http://depot.makina-corpus.org/public/logo.gif +.. _makinacom: http://www.makina-corpus.com