Найти - Пользователи
Полная версия: django:Редирект после загрузки фото
Начало » Django » django:Редирект после загрузки фото
1
A.Pervushow
Допиливаю сайт на django.
В админке есть интерфейс загрузки фото.
Выглядит так:
  
<form class="form-horizontal" action="POST" id='addPhoto' enctype="multipart/form-data">
                                    {% csrf_token %}
                                    <input value="{{ value.id }}" name="object_id" id="object_id" type="hidden"/>
                                    <div class="control-group">
                                        <label class="control-label" for="fileInput">Фото</label>
                                        <div class="controls">
                                            <input id="fileInput" class="input-file" type="file" name="photo"/>
                                        </div>
                                    </div>
                                    <button type="button" id='save_brend' class="btn btn-primary" onclick="form_send('#addPhoto','http://127.0.0.1:8000/admin/save_photo/','#result','#save_group')">Add photos</button>
                                </form> 

def save_photo(request):
    mimetype = 'application/javascript'
    if request.is_ajax():
        if not request.FILES:
            response = {
                'messages': [u'Photos not selected'],
                'status': False
            }
            return HttpResponse(json.dumps('error'),mimetype)
        else:
            photos = request.FILES.getlist('photo')
            for file in photos:
                temp_form = PhotoForm(request.POST, {'photo': file})
                if not temp_form.is_valid():
                    return ajax_response(errors=temp_form.errors, status=False)
            for file in photos:
                temp_form = PhotoForm(request.POST, {'photo': file})
                temp_form.saves()
        return HttpResponse(json.dumps('reload'),mimetype)
def add_photo(request,offset):
    pizza = Value.objects.get(id=offset)
    photo = Value.objects.filter(object_id=offset)
    return render_to_response('admin/add_photo.html',{'Value':value,'Photos':photo},context_instance=RequestContext(request))

Проблема в том, что после загрузки фото нужен редирект на страницу со всеми фотками.
Адрес страницы для редиректа admin/photo/3/#tab2 (например)

Я так понял, что проблема в PhotoForm, который выполняет POST запрос на загрузку фото.

Предложения глобально сменить архитектуру решения принимаются.

Заранее спасибо.
Lexander
После загрузки страницы с результатом аплоада в javascript делаете
window.location = 'http://site.com/admin/photo/3/#tab2';
A.Pervushow
Извините, я наверное неверно сформулировал.

Загрузка фотки происходит, а загрузка страницы с аплоадом- нет.
Т.е. HttpResponse или render_to_response не работает.
Нужно жать обновление страницы в браузере.

Вот здесь- http://python.su/forum/topic/15021/?page=1#post-90065
Похожая тема, но рецепт, который там написан мне не помог.
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB