Возможно, if request.is_ajax():
возвращает False, если это вся ваша функция просмотра?
Как правило, вы должны следовать этому шаблону при создании функций просмотра Django:
def my_view(request):
if request.method == 'POST':
form = MyForm(data=request.POST, files=request.FILES)
if form.is_valid():
# do something with form...
else:
initial = {...}
form = MyForm(initial=initial)
context = {'form':form, ...}
return render_to_response('path/to/template.html', context, context_instance=RequestContext(request))