Bu görünümde yapmak kolaydır:
from django.core.urlresolvers import reverse
url = request.build_absolute_uri(reverse('blog:detail', args=[blog.slug]))
şablonda yapmak gerekirse, muhtemelen kendi şablon etiketinizi çok fazla sorun olmadan oluşturabilirsiniz.
Düzenleme
Eğer Home
görünümünde bunu yapmak istiyor varsayarsak, böyle bir şey yapabileceğini: Sonra
def Home(request):
posts = Article.objects.filter(published=True).order_by('-publish')
site = Site.objects.get_current()
c = RequestContext(request, {
'posts': [{'post': post,
'url': request.build_absolute_uri(reverse('blog:detail', args=[post.slug]))}
for post in posts]
'site': site,
})
return render_to_response('templates/index.html', c)
Şablonunuzdaki Eğer {% for postobj in posts %}
yapabilirsiniz ile döngü yaparken Erişim postobj.post
ve postobj.url
.
olası yinelenen http://stackoverflow.com/questions/3994060/django- ([olsun \ _absolute \ _url tam url django] tam-url-in-get-mutlak-url) – karthikr
https://docs.djangoproject.com/en/dev/ref/request-response/#django.http.HttpRequest.build_absolute_uri Bu size yardımcı olabilir. –