HttpResponseRedirect Django + facebook

oy
0

Ben 2 düğmeli bir form var. düğmesine tıklayın kullanıcıya bağlı olarak farklı url alınır. görünüşüdür fonksiyonudur:

friend_id = request.POST.get('selected_friend_id_list')

history = request.POST.get('statushistory')
if history:
    print dfgdfgdf
    return HttpResponseRedirect('../status/')

else:
    return direct_to_template(request, 'friends_list.fbml',
                          extra_context={'fbuser': user,
                                         'user_lastname':user_lastname,
                                         'activemaintab':activemaintab,
                                         'friends':friends,
                                         'friend_list':friend_list}) 

Şablon için:

<input type=submit  value=Calendar View name=calendarview/>
<input type=submit  value=Status History name=statushistory/>
</form 

böylece benim sorunum sayfa url yönlendirme geçersiz. Ben HttpResponseRedirect yaparsanız ( '../') bana doğru sayfasını verir ama url değişmemektedir.

Geçerli sayfa = Friendlist / durum / böylece frinedlist / liste olmalı benim url oluşturmak göndererek / yani bu ( '../ liste /') HttpResponseRedirect çalışması gerekir ama URL değiştirildi almıyor sonra. Herhangi bir fikir? Nasıl bu Teşekkür düzeltebilirim

Oluştur 25/05/2009 saat 08:53
kaynak kullanıcı
Diğer dillerde...                            


2 cevaplar

oy
0

Neden göreli URL'ler kullanmak gerekir? Mutlak URL'ler kullanamaz mıyız?

Cevap 25/05/2009 saat 09:50
kaynak kullanıcı

oy
2

"Bu yüzden benim sorunum sayfa url yönlendirme geçersiz olduğunu. Ben HttpResponseRedirect yaparsanız ( '../') bana doğru sayfasını verir ama url değişmez."

"URL" olarak derken "tarayıcıda gösterilen URL'yi" anlamına tahmin ediyorum. Sorunuz çok hassas olup olmadığı yardımcı olur.

Öncelikle, mutlak bir URL belirtmeniz gerekir. http://docs.djangoproject.com/en/dev/ref/request-response/#django.http.HttpResponseRedirect

Bu bir mutlak URL gerekli olduğunu standartları (RFC 2616, bölüm 14,30) oldukça açık. Bazı tarayıcılar göreli bir URL tahammül edebilirler. Bazı yok.

İkinci olarak, programlarda göreli URL hiçbir yerinde kullanmak asla.

Sen kullanarak olmalıdır ters .

from django.core.urlresolvers import reverse

def myview(request):
    theURL= reverse('path.to.viewFunction')
    return HttpResponseRedirect(theURL)
Cevap 25/05/2009 saat 11:56
kaynak kullanıcı

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more