Installation¶
Follow this instructions to start using dajaxice in your django project.
Installing dajaxice¶
Add dajaxice in your project settings.py inside INSTALLED_APPS
:
INSTALLED_APPS = (
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.sites',
'dajaxice',
...
)
Ensure that your TEMPLATE_LOADERS
, looks like the following. Probably you’ll only need to uncomment the last line.:
TEMPLATE_LOADERS = (
'django.template.loaders.filesystem.Loader',
'django.template.loaders.app_directories.Loader',
'django.template.loaders.eggs.Loader',
)
Ensure that TEMPLATE_CONTEXT_PROCESSORS
has django.core.context_processors.request
. Probably you’ll only need to add the last line:
TEMPLATE_CONTEXT_PROCESSORS = (
'django.contrib.auth.context_processors.auth',
'django.core.context_processors.debug',
'django.core.context_processors.i18n',
'django.core.context_processors.media',
'django.core.context_processors.static',
'django.core.context_processors.request',
'django.contrib.messages.context_processors.messages'
)
Add dajaxice.finders.DajaxiceFinder
to STATICFILES_FINDERS
:
STATICFILES_FINDERS = (
'django.contrib.staticfiles.finders.FileSystemFinder',
'django.contrib.staticfiles.finders.AppDirectoriesFinder',
'dajaxice.finders.DajaxiceFinder',
)
Configure dajaxice url¶
Add the following code inside urls.py:
from dajaxice.core import dajaxice_autodiscover, dajaxice_config
dajaxice_autodiscover()
Add a new line in urls.py urlpatterns with this code:
urlpatterns = patterns('',
...
url(dajaxice_config.dajaxice_url, include('dajaxice.urls')),
...
)
If you aren’t using django.contrib.staticfiles
, you should also enable it importing:
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
and adding this line to the bottom of your urls.py:
urlpatterns += staticfiles_urlpatterns()
Install dajaxice in your templates¶
Dajaxice needs some JS to work. To include it in your templates, you should load dajaxice_templatetags
and use dajaxice_js_import
TemplateTag inside your head section. This TemplateTag will print needed js.
{% load dajaxice_templatetags %}
<html>
<head>
<title>My base template</title>
...
{% dajaxice_js_import %}
</head>
...
</html>
This templatetag will include all the js dajaxice needs.
Use Dajaxice!¶
Now you can create your first ajax function following the Quickstart.