RPC4Django
Prerequisites
- Python 2.7, 3.4+
- Django 1.9+
- DefusedXML
- Docutils (optional)
Installation
pip install rpc4django[reST]
Configuration
-
First, you need to add new url pattern to your root
urls.py
file. You can replacer'^RPC2$'
with anything you like.# urls.py from rpc4django.views import serve_rpc_request urlpatterns = patterns('', # rpc4django will need to be in your Python path (r'^RPC2$', serve_rpc_request), )
-
Second, add RPC4Django to the list of installed applications in your
settings.py
.# settings.py INSTALLED_APPS = ( 'rpc4django', )
-
Lastly, you need to let RPC4Django know which methods to make available. RPC4Django recursively imports all the apps in
INSTALLED_APPS
and makes any methods importable via__init__.py
with the @rpcmethod decorator available as RPC methods. You can always write your RPC methods in another module and simply import it in__init__.py
.# testapp/__init__.py from rpc4django import rpcmethod # The doc string supports reST if docutils is installed @rpcmethod(name='mynamespace.add', signature=['int', 'int', 'int']) def add(a, b): '''Adds two numbers together >>> add(1, 2) 3 ''' return a+b
-
For additional information, read the docs