Создайте функцию просмотра и создайте для нее @dajaxice_register decorator:
Глупый пример:
models.py:
class Funkyness(models.Model):
funktasm = models.CharField(max_length=128)
funfasticness = models.TextField()
urls.py:
url(r'^funk$', 'views.myFunkyView'),
views.py:
def myFunkyView(request)
render_to_request('index.htm', {'where': 'home'}, context_instance=RequestContext(request))
index.htm:
{% if where %}
You are {{ where }}
{% endif %}
Когда вы перейдете на http://yoursite.com/funk,, вы получите файл index.htm и страницу с надписью «Вы дома».
Теперь динамическая часть ...
Напишите метод представления как таковой:
from django.utils import simplejson
def getHowFunky(request, v):
html = """
<div class="my_message">
This is really funky, almost stinky...
<br />
""" + str(v) + """
</div>
"""
return simplejson.dumps({'message': html})
обратно в index.htm:
<script type="text/javascript>
/* first argument is return JS function, the second is the dictionary of data to sent to the python method. */
function init(){
Dajaxice.package.getHowFunky(showFunky, {'v': "Your's Truly... Fubar"});
}
function showFunky(data){
/* This is the data returned back from the AJAX (Dajaxice) call. */
document.write(data.message)
}
</script>
Итак, вы создаете метод python, который принимает входные данные и возвращает что-то. Вы регистрируете его в Dajaxice, вызываете его, передавая метод обратного вызова. Он запускается и при успешном выполнении отправляет возврат python (возможно, объект JSON) методу обратного вызова в качестве аргумента. Затем этот метод записывает на экран то, что получил от вызова Dajaxice.
Для получения дополнительной информации о Dajaxice, перейдите по адресу: http://dajaxproject.com/
Реквизит Хорхе Бастиде, единственному разработчику Dajax / Dajaxice!