2011-07-01 63 views
0

我使用Django的,所以我的quetion可能是愚蠢的:)絕對URL

我有一個URL到不同的網站在我的模型(文本字段,「othersite.com」)剛剛開始。我想在這樣的<a href="{{ article.url }}" > 的模板來顯示它,但Django的貓膩讓我<a href="http://mysite.com/articles/othersite.com" >

  1. 我該怎麼做才能<a href="othersite.com" >
  2. 對不起,我的語言,如果有任何錯誤:)

回答

4

您的瀏覽器進入,而不是Django的附加文本。這發生在沒有完整的URL以避免意外的行爲。

可以解決此問題通過固定數據,或通過修改你的模板是這樣的:

<a href="http://{{ article.url }}" > 
+0

偉大的作品!非常感謝你! :) – Dmitriy

0

如果所有URL必須是絕對的,這可以通過使用自定義模板標籤和過濾器來解決。

@register.filter 
@stringfilter 
def absoluteurl(url): 
    if "http" not in url: 
     return 'http://%s' % url 
    else: 
     return url 

然後,你可以簡單地<a href="{{ article.url|absoluteurl }}" >

https://docs.djangoproject.com/en/1.11/howto/custom-template-tags/