Използване на Extjs и Django1.3

Публикувано на

Вчера започнах да разглежда по-сериозно JavaScript Framework-ът ExtJs и бях изпрвавен пред сериозен проблем. Както знаем в Django1.3 има csrf protection дори и на Ajax рекуестите. За това на първо време туториълът, който исках да пробвам не искаше да работи. Опитах се да слагам csrf_exempt, но заради спецификата на extdirect това не важи. След известно ровене попаднах на тази статия. Тя е за ExtJs4, a на мен ми трябва за ExtJs3, за това се наложи да изтрия няколко реда и в краен резултат да се получи това:

// Add csrf token to every ajax request
var token = Ext.util.Cookies.get('csrftoken');

if(!token) {
	Ext.Error.raise("Missing csrftoken cookie");
} else {
	Ext.Ajax.defaultHeaders = Ext.apply(Ext.Ajax.defaultHeaders || {}, { 'X-CSRFToken': token });
}

Което добавяме в основният темплейт след зареждането на скриптвете на framework-a.

blog comments powered by Disqus