2011-11-30 19 views
11

'a nasıl alırım Adım adım bilgi vereceğim.Bir önceki URL'yi django

Diyelim ki, yaklaşık sayfadayız, url sample.com/about. Tıklandığında, url'nin example.com/emailafriend olduğunu belirten bir arkadaş e-postası var. Gönderim düğmesini tıkladığımda, referal url gönderilecek örnek.com/emailafriend. Soru, sayfa url'si nasıl alınır? BTW, request.META['HTTP_REFERER'] kullanıyorum.

cevap

10

Sen request path attribute ile çalışmak ve böylece gibi, formun eylem özellik olduğunu ekleyebilirsiniz:

<form method="post" action="/tell-a-friend?return_url={{ request.path }}"> 
... 
</form> 

Ardından, Tell-a-friend görünümü, return_url sorgu parametresine HttpResponseRedirect yılında.

+0

Bu kesinlikle yönlendirmelerle uğraşacak iyi bir yaklaşım. –

1

Belki de, eğik çizginiz yoksa bir yönlendirme yapacak olan APPEND_SLASH kullanıyorsunuzdur. Düğme bağlantısını sample.com/emailafriend/ olarak değiştirmeyi deneyin, bitiş çizgisine dikkat edin.

+0

göz atın. META –

+0

Bu isteği zaten kullanıyorum. Ancak, gönder düğmesini tıkladığınızda, daha fazla değil, referal sayfa zaten example.com/emailafriend şeklindedir. – david

+0

Sadece cevabımı güncelledim. –

0

Belki örnek.com/about'u GET veya POST parametresi olarak geçirmeniz yeterlidir? Veya oturumu bile.

1

Ve şablonda boş request değişkeni alırsanız, https://docs.djangoproject.com/en/dev/ref/request-response/#django.http.HttpRequest göre this post

İlgili konular